Skip to content

Commit fa8de20

Browse files
aQuaaQua
aQua
authored and
aQua
committed
55 finish
1 parent 13d26dd commit fa8de20

File tree

3 files changed

+15
-3
lines changed

3 files changed

+15
-3
lines changed

Algorithms/0055.jump-game/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,5 +13,5 @@ A = [2,3,1,1,4], return true.
1313
A = [3,2,1,0,4], return false.
1414
```
1515
## 解题思路
16-
16+
关键能不能跨过数值为0的元素。
1717
见程序注释

Algorithms/0055.jump-game/jump-game.go

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,24 @@
11
package Problem0055
22

33
func canJump(nums []int) bool {
4-
i := len(nums) - 2
5-
for ; i >= 0; i-- {
4+
5+
for i := len(nums) - 2; i >= 0; i-- {
6+
// 找到数值为 0 的元素
67
if nums[i] != 0 {
78
continue
89
}
910

1011
j := i - 1
1112
for ; j >= 0; j-- {
1213
if i-j < nums[j] {
14+
// 在 j 号位置上,可以跨过 0 元素
1315
i = j
1416
break
1517
}
1618
}
1719

1820
if j == -1 {
21+
// 在 0 元素之前,没有位置可以跨过 0
1922
return false
2023
}
2124
}

Algorithms/0055.jump-game/jump-game_test.go

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,15 @@ func Test_Problem0055(t *testing.T) {
5454
},
5555
},
5656

57+
question{
58+
para{
59+
[]int{3, 2, 2, 0, 0},
60+
},
61+
ans{
62+
true,
63+
},
64+
},
65+
5766
// 如需多个测试,可以复制上方元素。
5867
}
5968

0 commit comments

Comments
 (0)