題目:
給定乙個非負整數陣列 nums ,你最初位於陣列的 第乙個下標 。
陣列中的每個元素代表你在該位置可以跳躍的最大長度。
判斷你是否能夠到達最後乙個下標。
示例 1:
輸入:nums = [2,3,1,1,4]
輸出:true
解釋:可以先跳 1 步,從下標 0 到達下標 1, 然後再從下標 1 跳 3 步到達最後乙個下標。
示例 2:
輸入:nums = [3,2,1,0,4]
輸出:false
解釋:無論怎樣,總會到達下標為 3 的位置。但該下標的最大跳躍長度是 0 , 所以永遠不可能到達最後乙個下標。
題解:這樣以來,我們依次遍歷陣列中的每乙個位置,並實時維護 最遠可以到達的位置。對於當前遍歷到的位置 x,如果它在 最遠可以到達的位置 的範圍內,那麼我們就可以從起點通過若干次跳躍到達該位置,因此我們可以用 x+nums[x] 更新 最遠可以到達的位置。
在遍歷的過程中,如果 最遠可以到達的位置 大於等於陣列中的最後乙個位置,那就說明最後乙個位置可達,我們就可以直接返回 true 作為答案。反之,如果在遍歷結束後,最後乙個位置仍然不可達,我們就返回 false 作為答案。
class
solution
int size=nums.
size()
;int mostpos=0;
for(
int i=
0;i}}
return
false;}
};
跳躍遊戲 貪心
時間限制 1000ms 記憶體限制 65536k給定乙個非負整數陣列,假定你的初始位置為陣列第乙個下標。陣列中的每個元素代表你在那個位置能夠跳躍的最大長度。請確認你是否能夠跳躍到陣列的最後乙個下標。例如 a 2,3,1,1,4 能夠跳躍到最後乙個下標,輸出true a 3,2,1,0,4 不能跳躍到...
跳躍遊戲 貪心
給定乙個非負整數陣列,假定你的初始位置為陣列第乙個下標。陣列中的每個元素代表你在那個位置能夠跳躍的最大長度。請確認你是否能夠跳躍到陣列的最後乙個下標。例如 a 2,3,1,1,4 a 2,3,1,1,4 能夠跳躍到最後乙個下標,輸出true a 3,2,1,0,4 不能跳躍到最後乙個下標,輸出fal...
Leetcode 跳躍遊戲 貪心
題目描述 給定乙個非負整數陣列,你最初位於陣列的第乙個位置。陣列中的每個元素代表你在該位置可以跳躍的最大長度。判斷你是否能夠到達最後乙個位置。示例 1 輸入 2,3,1,1,4 輸出 true解釋 從位置 0 到 1 跳 1 步,然後跳 3 步到達最後乙個位置。示例 2 輸入 3,2,1,0,4 輸...