class
solution
//f[i]代表從從索引i到達最後需要的最少步數(dp),f[i]=-1代表其無法到達最後
void
addnew
(int f,
int[
] nums,
int index)
for(
int i=firstposi;i>=index+
1;i--
)//只看f[index]到達的聊得地方
else
}//無法到達則改為-1
事實證明上面的**是正確的,但是複雜度太高
基本思路:f[i]表示從0到i所需要的最小1步數;f[i]的排列方式為011
1222
3334
4...一直到最後乙個位置
class
solution
//獲取最大值後開始賦值,並更新i,j的值,並且要防止越界
if(max>nums.length-1)
max = nums.length-1;
num++
; i=j+1;
j=max;
}return num;
}}
LeetCoda 45 跳躍遊戲2
給定乙個非負整數陣列,你最初位於陣列的第乙個位置。陣列中的每個元素代表你在該位置可以跳躍的最大長度。你的目標是使用最少的跳躍次數到達陣列的最後乙個位置。示例 輸入 2,3,1,1,4 輸出 2 解釋 跳到最後乙個位置的最小跳躍數是 2。從下標為 0 跳到下標為 1 的位置,跳1步,然後跳 3步到達陣...
LeetCode 45 跳躍遊戲2
給定乙個非負整數陣列,你最初位於陣列的第乙個位置。陣列中的每個元素代表你在該位置可以跳躍的最大長度。你的目標是使用最少的跳躍次數到達陣列的最後乙個位置。這一條題目有兩思路,乙個是 貪心演算法,還有乙個是轉化為圖的形式考慮,使用bfs演算法,我先寫下bfs思路,greedy 我還有點問題。bfs此題就...
leetcode45 跳躍遊戲2
一.因為求解的是乙個最優化問題,所以第乙個想到的是動態規劃,但是很可惜的是超時了.令dp i 為可以跳躍到i的最小跳躍次數.二.直接參考題解了.1.解法一 順藤摸瓜 2.貪婪演算法,我們每次在可跳範圍內選擇可以使得跳的更遠的位置。每次找區域性最優,最後達到全域性最優.3.寫 的話,我們用 end 表...