45 跳躍遊戲 II

2021-10-07 22:37:20 字數 627 閱讀 9028

題目描述:

給定乙個非負整數陣列,你最初位於陣列的第乙個位置。

陣列中的每個元素代表你在該位置可以跳躍的最大長度。

你的目標是使用最少的跳躍次數到達陣列的最後乙個位置。

示例:

輸入: [2,3,1,1,4]

輸出: 2

解釋: 跳到最後乙個位置的最小跳躍數是 2。

從下標為 0 跳到下標為 1 的位置,跳 1 步,然後跳 3 步到達陣列的最後乙個位置。

說明:

假設你總是可以到達陣列的最後乙個位置。

方法1:

主要思路:

(1)這個和跳躍遊戲 1類似,只不過需要想辦法記錄下來最小的跳數,這裡以cur_end 記錄當前跳能夠達到的最遠距離,當達到但前跳時,需要更新下一跳的最大距離,既 cur_end=max_pos;同時增加跳數;

(2)最大距離一直以當前位置能夠達到的最遠的距離進行記錄,max_pos=max(max_pos,i+nums[i]);

(3)迴圈中的遍歷條件為iclass

solution

}return step;}}

;

45 跳躍遊戲 II

給定乙個非負整數陣列,你最初位於陣列的第乙個位置。陣列中的每個元素代表你在該位置可以跳躍的最大長度。你的目標是使用最少的跳躍次數到達陣列的最後乙個位置。示例 輸入 2,3,1,1,4 輸出 2 解釋 跳到最後乙個位置的最小跳躍數是 2。從下標為 0 跳到下標為 1 的位置,跳 1 步,然後跳 3 步...

45 跳躍遊戲 II

貪心 每一步都挑選下一步能達到的最遠距離。2,3,1,1,4 1 2 3 4 5 以下數字指代下標1 5.第一次可以跳到下標2或者3,如果跳到2,下一步最遠可以跳到5,如果跳到3,下一步只能跳到4,所以這一次選擇跳到2。如果某一步的最遠距離跨過了5或者到達了5,說明可以跳到終點。本題已經說了肯定可以...

45 跳躍遊戲 II

題目描述 給定乙個非負整數陣列,你最初位於陣列的第乙個位置。陣列中的每個元素代表你在該位置可以跳躍的最大長度。你的目標是使用最少的跳躍次數到達陣列的最後乙個位置。示例 輸入 2,3,1,1,4 輸出 2 解釋 跳到最後乙個位置的最小跳躍數是 2。從下標為 0 跳到下標為 1 的位置,跳 1 步,然後...