南宁网站建设哪家公司实,网店运营入门基础知识,广州官方网站建设,wordpress comments_template给定一个非负整数数组#xff0c;你最初位于数组的第一个位置。
数组中的每个元素代表你在该位置可以跳跃的最大长度。
你的目标是使用最少的跳跃次数到达数组的最后一个位置。
示例:
输入: [2,3,1,1,4] 输出: 2 解释: 跳到最后一个位置的最小跳跃数是 2。 从下标为 …给定一个非负整数数组你最初位于数组的第一个位置。
数组中的每个元素代表你在该位置可以跳跃的最大长度。
你的目标是使用最少的跳跃次数到达数组的最后一个位置。
示例:
输入: [2,3,1,1,4] 输出: 2 解释: 跳到最后一个位置的最小跳跃数是 2。 从下标为 0 跳到下标为 1 的位置跳 1 步然后跳 3 步到达数组的最后一个位置。 说明:
假设你总是可以到达数组的最后一个位置。
动态转移方程
if(jijnums[j]i)
{ dp[i] min(dp[i],dp[j]1); }
提交的代码
class Solution { public int jump(int[] nums) { if(nums.length0) { return 0; } int dp[] new int[nums.length]; dp[0] 0; for(int i1;inums.length;i) { dp[i] 21474836471; for(int j0;ji;j) { if(jnums[j]i) { dp[i] Math.min(dp[i], dp[j]1); } } } return dp[nums.length-1]; }
}