Hyplus目录
Java
/**
* <a href="https://leetcode.cn/problems/jump-game-ii/">Jump Game II</a>
* 贪心;数组;动态规划
*/
class Solution {
public int jump(int[] nums) {
int end = 0;
int maxPos = 0;
int steps = 0;
for (int i = 0; i < nums.length - 1; i++) {
maxPos = Math.max(maxPos, i + nums[i]);
if (i == end) {
end = maxPos;
steps++;
}
}
return steps;
}
}
Go
func jump(nums []int) int {
end := 0
maxPos := 0
steps := 0
for i := 0; i < len(nums)-1; i++ {
maxPos = max(maxPos, i+nums[i])
if i == end {
end = maxPos
steps++
}
}
return steps
}
JavaScript
/**
* @param {number[]} nums
* @return {number}
*/
var jump = function (nums) {
let end = 0;
let maxPos = 0;
let steps = 0;
for (let i = 0; i < nums.length - 1; i++) {
maxPos = Math.max(maxPos, i + nums[i]);
if (i === end) {
end = maxPos;
steps++;
}
}
return steps;
};
PHP
class Solution {
/**
* @param Integer[] $nums
* @return Integer
*/
function jump(array $nums): int {
$length = count($nums);
$end = 0;
$maxPos = 0;
$steps = 0;
for ($i = 0; $i < $length - 1; $i++) {
$maxPos = max($maxPos, $i + $nums[$i]);
if ($i == $end) {
$end = $maxPos;
$steps++;
}
}
return $steps;
}
}