Skip to content

Commit 040385b

Browse files
committed
Update Solution.java
1 parent ca341ed commit 040385b

File tree

1 file changed

+19
-20
lines changed

1 file changed

+19
-20
lines changed

src/main/java/g0001_0100/s0045_jump_game_ii/Solution.java

Lines changed: 19 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -5,27 +5,26 @@
55
// #Big_O_Time_O(n)_Space_O(1) #2024_11_10_Time_0_ms_(100.00%)_Space_44.9_MB_(75.73%)
66

77
class Solution {
8-
public int jump(int[] nums) {
9-
if (nums.length == 1) {
10-
return 0;
8+
public int jump(int[] nums) {
9+
if (nums.length == 1) {
10+
return 0;
11+
}
12+
return minJumps(nums, 0, 0);
1113
}
12-
return minJumps(nums, 0, 0);
13-
}
1414

15-
16-
private static int minJumps(int[] nums, int currIndex, int jumpStatus) {
17-
if (currIndex + nums[currIndex] >= nums.length - 1) {
18-
return jumpStatus + 1;
19-
}
20-
int nextIndex = currIndex + 1;
21-
int distanceLeft = (nums.length - 1 - (currIndex + 1)) - nums[currIndex + 1];
22-
for (int i = currIndex + 2; i <= (currIndex + nums[currIndex]); i++) {
23-
int tempDistanceLeft = (nums.length - 1 - i) - nums[i];
24-
if (distanceLeft > tempDistanceLeft) {
25-
distanceLeft = tempDistanceLeft;
26-
nextIndex = i;
27-
}
15+
private static int minJumps(int[] nums, int currIndex, int jumpStatus) {
16+
if (currIndex + nums[currIndex] >= nums.length - 1) {
17+
return jumpStatus + 1;
18+
}
19+
int nextIndex = currIndex + 1;
20+
int distanceLeft = (nums.length - 1 - (currIndex + 1)) - nums[currIndex + 1];
21+
for (int i = currIndex + 2; i <= (currIndex + nums[currIndex]); i++) {
22+
int tempDistanceLeft = (nums.length - 1 - i) - nums[i];
23+
if (distanceLeft > tempDistanceLeft) {
24+
distanceLeft = tempDistanceLeft;
25+
nextIndex = i;
26+
}
27+
}
28+
return minJumps(nums, nextIndex, jumpStatus + 1);
2829
}
29-
return minJumps(nums, nextIndex, jumpStatus + 1);
30-
}
3130
}

0 commit comments

Comments
 (0)