leetcode 55 跳躍遊戲

2021-09-24 23:29:35 字數 1171 閱讀 8725

給定乙個非負整數陣列,你最初位於陣列的第乙個位置。陣列中的每個元素代表你在該位置可以跳躍的最大長度。判斷你是否能夠到達最後乙個位置。

示例 1:

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

輸出: true

解釋: 從位置 0 到 1 跳 1 步, 然後跳 3 步到達最後乙個位置。

示例 2:

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

輸出: false

解釋: 無論怎樣,你總會到達索引為 3 的位置。但該位置的最大跳躍長度是 0 , 所以你永遠不可能到達最後乙個位置。

方法1:動態規劃

從左到右依次判斷索引座標i是否能跳到,當遍歷到陣列末尾時,當dp[nums.length-1]==true時說明能跳到這個位置。即可以跳到最後乙個位置。
方法2: 貪心演算法

從右向左迭代,對於每個節點我們檢查是否存在一步跳躍可以到達 good 的位置(currposition + nums[currposition] >= leftmostgoodindex)。

如果可以到達,當前位置也標記為 good ,同時,這個位置將成為新的最左邊的 good 位置,一直重複到陣列的開頭,如果第乙個座標標記為 good 意

味著可以從第乙個位置跳到最後的位置。

方法1:動態規劃

public

static

boolean

canjump

(int

nums)}}

return dp[nums.length-1]

;}

方法2:貪心演算法

public

static

boolean

canjump2

(int

nums)

}return lastpos ==0;

}

方法1:動態規劃

方法2:貪心演算法

LeetCode55 跳躍遊戲

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

LeetCode 55 跳躍遊戲

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

LeetCode 55 跳躍遊戲

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