g0001_0100.s0045_jump_game_ii.Solution Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of leetcode-in-java Show documentation
Show all versions of leetcode-in-java Show documentation
Java-based LeetCode algorithm problem solutions, regularly updated
package g0001_0100.s0045_jump_game_ii;
// #Medium #Top_100_Liked_Questions #Array #Dynamic_Programming #Greedy
// #Algorithm_II_Day_13_Dynamic_Programming #Dynamic_Programming_I_Day_4
// #Big_O_Time_O(n)_Space_O(1) #2023_08_11_Time_2_ms_(49.02%)_Space_44.7_MB_(52.72%)
public class Solution {
public int jump(int[] nums) {
int length = 0;
int maxLength = 0;
int minJump = 0;
for (int i = 0; i < nums.length - 1; ++i) {
length--;
maxLength--;
maxLength = Math.max(maxLength, nums[i]);
if (length <= 0) {
length = maxLength;
minJump++;
}
if (length >= nums.length - i - 1) {
return minJump;
}
}
return minJump;
}
}