网站关键词选取的步骤郑州旅游网站制作
web/
2025/10/1 10:08:52/
文章来源:
网站关键词选取的步骤,郑州旅游网站制作,企业如何进行网络营销,asp网站开发报告Leetcode 45. 跳跃游戏 II
动态规划
使用dp [ ] 记录每个位置可达的最小步数#xff0c;每到达一个点时#xff0c;更新该点所能跳跃区间内的所有点的dp值 时间复杂度较高
class Solution {public int jump(int[] nums) {int n nums.length;int dp[] new int [n];int N …Leetcode 45. 跳跃游戏 II
动态规划
使用dp [ ] 记录每个位置可达的最小步数每到达一个点时更新该点所能跳跃区间内的所有点的dp值 时间复杂度较高
class Solution {public int jump(int[] nums) {int n nums.length;int dp[] new int [n];int N 99999;Arrays.fill(dp, N);dp[0] 0;for(int i 0 ; i n; i ){for(int j 1 ; j nums[i]; j ){if(i j n)dp[i j] Math.min(dp[i j], dp[i] 1);}}return dp[n-1];}
}优化 双指针
双指针 l r 表示目前可达的区间左右端点遍历区间维护一个可达的最远距离maxPos 当 l r 相遇即区间遍历结束后将该区间内可达的最远距离maxPos作为下一次跳跃的区间右端点 r 此时跳跃一步 当 r 可以到达边界时即结束遍历 时间复杂度O(n)
class Solution {public int jump(int[] nums) {int n nums.length;int l 0;int r 0;int maxPos 0;int step 0;while(r n-1){maxPos Math.max(maxPos, l nums[l]);// 该区间已遍历结束更新区间右端点此步跳出if(l r){r maxPos;step ;}l ;}return step;}
}
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/84991.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!