陣列跳躍問題

2021-08-27 06:00:11 字數 524 閱讀 8467

程式設計2:給出乙個非負整數陣列,最初定位在陣列的第乙個位置,陣列中的每個元素的值代表你在那個位置可以跳躍的最大長度,判斷你是否到達陣列的最後乙個位置

例如: a = ,返回true, a = ,返回false

*/

#if 0

int jump(int arr,int n,int x)//x代表當前走到的位置,也是每次遞迴改變的值

return

0;//3.

}int main()

int ret = jump(a,n,0);

if(ret == 1)

cout

<<"true"

cout

<<"false"

<#endif

思路:設計乙個遞迴,其中要傳入乙個當前位置,

如果當前位置對應的元素不是0,那麼就繼續遞迴,跳出條件是當前位置到達n-1,如果是0,那麼就想後移動一位繼續跳躍,其中用乙個i–的迴圈記錄跳躍的長度,跳出條件為i為0,表明跳不出來了,return 0 撥開遞迴。

LeetCode 陣列 跳躍問題

給定乙個非負整數陣列,你最初位於陣列的第乙個位置。陣列中的每個元素代表你在該位置可以跳躍的最大長度。判斷你是否能夠到達最後乙個位置。示例 1 輸入 2,3,1,1,4 輸出 true解釋 從位置 0 到 1 跳 1 步,然後跳 3 步到達最後乙個位置。示例 2 輸入 3,2,1,0,4 輸出 fal...

55 跳躍陣列

55.跳躍遊戲 給定乙個非負整數陣列,你最初位於陣列的第乙個位置。陣列中的每個元素代表你在該位置可以跳躍的最大長度。判斷你是否能夠到達最後乙個位置。示例 1 輸入 2,3,1,1,4 輸出 true 解釋 從位置 0 到 1 跳 1 步,然後跳 3 步到達最後乙個位置。示例 2 輸入 3,2,1,0...

陣列移動跳躍

給定乙個非空的整數陣列,從陣列第乙個元素 下標為0的元素 開始遍歷進行移動,下一次向後或向前移動 該元素的值 的位數 值為正數向後移動,值為負數向前移動,值為零不移動 依次類推進行移動,若某次移動陣列出現越界,則說明陣列可以跳出,返回true 不能跳出則返回false 輸入陣列a 5 1,2,3,2...