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:
217217### Go
218218``` Go
219219func 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+ }
232240}
233241```
234242
You can’t perform that action at this time.
0 commit comments