File tree Expand file tree Collapse file tree 1 file changed +20
-12
lines changed Expand file tree Collapse file tree 1 file changed +20
-12
lines changed Original file line number Diff line number Diff line change @@ -217,18 +217,26 @@ class Solution:
217
217
### Go
218
218
``` Go
219
219
func jump (nums []int ) int {
220
- dp := make ([]int ,len (nums))
221
- dp[0 ]=0
222
-
223
- for i := 1 ;i<len (nums);i++{
224
- dp[i]=i
225
- for j := 0 ;j<i;j++{
226
- if nums[j]+j>i{
227
- dp[i]=min (dp[j]+1 ,dp[i])
228
- }
229
- }
230
- }
231
- return dp[len (nums)-1 ]
220
+ dp := make ([]int , len (nums))
221
+ dp[0 ] = 0 // 初始第一格跳跃数一定为0
222
+
223
+ for i := 1 ; i < len (nums); i++ {
224
+ dp[i] = i
225
+ for j := 0 ; j < i; j++ {
226
+ if nums[j] + j >= i {// nums[j]为起点,j为往右跳的覆盖范围,这行表示从j能跳到i
227
+ dp[i] = min (dp[j] + 1 , dp[i])// 更新最小能到i的跳跃次数
228
+ }
229
+ }
230
+ }
231
+ return dp[len (nums)-1 ]
232
+ }
233
+
234
+ func min (a , b int ) int {
235
+ if a < b {
236
+ return a
237
+ } else {
238
+ return b
239
+ }
232
240
}
233
241
```
234
242
You can’t perform that action at this time.
0 commit comments