Leetcode 55. 跳躍遊戲 C++
題目描述:
給定一個非負整數陣列,你最初位於陣列的第一個位置。
陣列中的每個元素代表你在該位置可以跳躍的最大長度。
判斷你是否能夠到達最後一個位置。
示例 1:
輸入: [2,3,1,1,4] 輸出: true 解釋: 從位置 0 到 1 跳 1 步, 然後跳 3 步到達最後一個位置。
示例 2:
輸入: [3,2,1,0,4] 輸出: false 解釋: 無論怎樣,你總會到達索引為 3 的位置。但該位置的最大跳躍長度是 0 , 所以你永遠不可能到達最後一個位置。
解答:
說實話,這道題雖然分類是一道貪心演算法,但是我並沒有明顯感受到貪心演算法。
思路:
(1)設定一個變數,用於記錄可以到達的最遠位置。在演算法中使用了迴圈,歷遍到每一個位置,都基於當前的情況檢視可以到達的最遠的位置,如果可以到達的位置大於之前的記錄,那麼就跟新。對位置 i ,在這個位置可以到達的最遠點為 i +nums[i] 。
(2)迴圈一直在向前推進,如果到了某一個位置 i ,i > max_position 。那麼說明不可能到達位置 i ,返回false。
class Solution { public: bool canJump(vector<int>& nums) { if(nums.empty()) return false;//這裡return true或者false應該都可以 int max_position=nums[0]; for(int i=0;i<nums.size();++i) { if(i>max_position) return false; if(nums[i]+i>max_position) { max_position=nums[i]+i; } } return true; } };
相關推薦
Leetcode 55. 跳躍遊戲 C++
題目描述: 給定一個非負整數陣列,你最初位於陣列的第一個位置。 陣列中的每個元素代表你在該位置可以跳躍的最大長度。 判斷你是否能夠到達最後一個位置。 示例 1: 輸入: [2,3,1,1,4] 輸出: true 解釋: 從位置 0 到 1 跳 1 步, 然後跳 3
LeetCode 55. 跳躍遊戲 Jump Game(C語言)
題目描述: 給定一個非負整數陣列,你最初位於陣列的第一個位置。 陣列中的每個元素代表你在該位置可以跳躍的最大長度。 判斷你是否能夠到達最後一個位置。 示例 1: 輸入: [2,3,1,1,4] 輸出: true 解釋: 從位置 0 到 1 跳 1 步, 然後跳 3 步
LeetCode 55. 跳躍遊戲(Jump Game)
更新 你在 ron 索引 etc urn -- bre nbsp 題目描述 給定一個非負整數數組,你最初位於數組的第一個位置。 數組中的每個元素代表你在該位置可以跳躍的最大長度。 判斷你是否能夠到達最後一個位置。 示例 1: 輸入: [2,3,1,1,4] 輸
[leetcode] 55. 跳躍遊戲
mat math num pro script length -- ble -c 55. 跳躍遊戲 分明就是45. 跳躍遊戲 II的縮水版本嘛。。??,難度高的版本居然放在了前面,把像我這種有強迫癥的必須按照題號刷題的人不放在眼裏麽。。。 class Solution {
LeetCode---55.跳躍遊戲
題目來源:https://leetcode-cn.com/problems/jump-game/description/ 題目描述: 題目分析:這個題要先理解題目,題目中說的是:數字代表的是最大的可跳躍長度,比如數字是3,那麼你跳1,2,3都行,而不是隻可以跳3步。經過思考
LeetCode 55.跳躍遊戲 貪心演算法
給定一個非負整數陣列,你最初位於陣列的第一個位置。 陣列中的每個元素代表你在該位置可以跳躍的最大長度。 判斷你是否能夠到達最後一個位置。 示例 1: 輸入: [2,3,1,1,4] 輸出: true 解釋: 從位置 0 到 1 跳 1 步, 然後跳 3 步到達最後一個位置。
LeetCode--55.跳躍遊戲
問題: 給定一個非負整數陣列,你最初位於陣列的第一個位置,陣列中的每個元素代表你在該位置可以跳躍的最大長度,判斷你是否能夠到達最後一個位置。 示例 1: 輸入: [2,3,1,1,4] 輸出: true 解釋
Leetcode 55.跳躍遊戲
跳躍遊戲 給定一個非負整數陣列,你最初位於陣列的第一個位置。 陣列中的每個元素代表你在該位置可以跳躍的最大長度。 判斷你是否能夠到達最後一個位置。 示例 1: 輸入: [2,3,1,1,4] 輸出: true 解釋: 從位置 0 到 1 跳 1 步, 然後跳 3 步到達最後
LeetCode 55. 跳躍遊戲 Python
給定一個非負整數陣列,你最初位於陣列的第一個位置。陣列中的每個元素代表你在該位置可以跳躍的最大長度。判斷你是否能夠到達最後一個位置。示例 1:輸入: [2,3,1,1,4] 輸出: true 解釋: 從位置 0 到 1 跳 1 步, 然後跳 3 步到達最後一個位置。 示例 2
leetcode 55. 跳躍遊戲 JAVA
pan 你是 pub i++ 遊戲 color 輸出 lee 一個 題目: 給定一個非負整數數組,你最初位於數組的第一個位置。 數組中的每個元素代表你在該位置可以跳躍的最大長度。 判斷你是否能夠到達最後一個位置。 示例 1: 輸入: [2,3,1,1,4] 輸出
【LeetCode】55. 跳躍遊戲 結題報告 (C++)
題目描述: 給定一個非負整數陣列,你最初位於陣列的第一個位置。 陣列中的每個元素代表你在該位置可以跳躍的最大長度。 判斷你是否能夠到達最後一個位置。 示例 1: 輸入: [2,3,1,1,4] 輸出: true 解釋: 從位置 0 到 1 跳 1 步, 然後跳
LeetCode:跳躍遊戲【55】
style code new bsp known als fur 遊戲 solution LeetCode:跳躍遊戲【55】 題目描述 給定一個非負整數數組,你最初位於數組的第一個位置。數組中的每個元素代表你在該位置可以跳躍的最大長度。判斷你是否能夠到達最後一個位置。 示例
LeetCode Medium 55 跳躍遊戲 Python
方法一: 演算法:貪心 首先要明確如何向後跳是一個好的選擇,從某個位置i向後跳的時候,可以選擇的位置有nums[i]個(nums[i]儲存
【LeetCode-演算法】55. 跳躍遊戲(Java實現)
題目 給定一個非負整數陣列,你最初位於陣列的第一個位置。陣列中的每個元素代表你在該位置可以跳躍的最大長度。判斷你是否能夠到達最後一個位置。 示例1 輸入: [2,3,1,1,4] 輸出: true 解釋: 從位置 0 到 1 跳 1 步, 然後跳 3 步到達最後
【Leetcode】55. 跳躍遊戲
作者: 碼蹄疾 畢業於哈爾濱工業大學。 小米廣告第三代廣告引擎的設計者、開發者; 負責小米應用商店、日曆、開屏廣告業務線研發; 主導小米廣告引擎多個模組重構; 關注推薦、搜尋、廣告領域相關知識; 題目 給定一個非負整數陣
LeetCode筆記——55跳躍遊戲
題目: 給定一個非負整數陣列,你最初位於陣列的第一個位置。 陣列中的每個元素代表你在該位置可以跳躍的最大長度。 判斷你是否能夠到達最後一個位置。 示例 1: 輸入: [2,3,1,1,4] 輸出: true 解釋: 從位置 0 到 1 跳 1 步, 然後跳 3 步到
[leetcode] 45. 跳躍遊戲 II(Java)(動態規劃)
com max https 重疊 http findmi 條件 leetcode scrip 45. 跳躍遊戲 II 動態規劃 此題可以倒著想。 看示例: [2,3,1,1,4] 我們從後往前推,對於第4個數1,跳一次 對於第3個數1,顯然只能跳到第4個數上,那麽從第3個數
LeetCode---45.跳躍遊戲II
題目來源:https://leetcode-cn.com/problems/jump-game-ii/description/ 題目描述: 演算法描述:這題是上一個題的升級版,詳情請見https://blog.csdn.net/qq_39241239/article/details/8
55.跳躍遊戲(Jump Game)
我的GitHub,歡迎捧場:https://github.com/FuGaZn/LeetCode 題目描述 給定一個非負整數陣列,你最初位於陣列的第一個位置。 陣列中的每個元素代表你在該位置可以跳躍的最大長度。 判斷你是否能夠到達最後一個位置。 示例 1: 輸入: [
55. 跳躍遊戲
給定一個非負整數陣列,你最初位於陣列的第一個位置。 陣列中的每個元素代表你在該位置可以跳躍的最大長度。 判斷你是否能夠到達最後一個位置。 示例 1: 輸入: [2,3,1,1,4] 輸出: true 解釋: 從位置 0 到 1 跳 1 步, 然後跳 3 步到達最後一個