62、 不同路徑
乙個機械人位於乙個 m x n 網格的左上角 (起始點在下圖中標記為「start」 )。
機械人每次只能向下或者向右移動一步。機械人試圖達到網格的右下角(在下圖中標記為「finish」)。
問總共有多少條不同的路徑?
例如,上圖是乙個7 x 3 的網格。有多少可能的路徑?
說明:m 和 n 的值均不超過 100。
class solution
for(int j=0;j0][j] = 1;
}for(int i=1;ifor(int j=1;j1][j] + dp[i][j-1];}}
return dp[m-1][n-1];
}}
使用壓縮演算法後:
先計算第一行,然後第二行。。。。。
class solution
for(int i=1;i0] = 1;
for(int j=1;j1];}}
return dp[n-1];
}}
53、 最大子序和
給定乙個整數陣列 nums ,找到乙個具有最大和的連續子陣列(子陣列最少包含乙個元素),返回其最大和。
示例:輸入: [-2,1,-3,4,-1,2,1,-5,4],
輸出: 6
解釋: 連續子陣列 [4,-1,2,1] 的和最大,為 6。
高階:如果你已經實現複雜度為 o(n) 的解法,嘗試使用更為精妙的分治法求解。
保留上一次
class
solution else
if(max <= sum)
pre = sum;
}return max;
}}
class
solution
if(sum
< 0)
}return max;
}}
注意:兩個if 的順序不能反。因為後面的把sum的值給改掉了!
還可以儲存上乙個值pre。
我的詳細解釋:
62 不同路徑 動態規劃
乙個機械人位於乙個 m x n 網格的左上角 起始點在下圖中標記為 start 機械人每次只能向下或者向右移動一步。機械人試圖達到網格的右下角 在下圖中標記為 finish 問總共有多少條不同的路徑?本質上就是乙個 楊輝三角。這是個楊輝三角形,每個位置的路徑 該位置左邊的路徑 該位置上邊的路徑 動態...
動態規劃 leetcode62 不同路徑 C
乙個機械人位於乙個 m x n 網格的左上角 起始點在下圖中標記為 start 機械人每次只能向下或者向右移動一步。機械人試圖達到網格的右下角 在下圖中標記為 finish 問總共有多少條不同的路徑?示例 1 輸入 m 3,n 2 輸出 3 解釋 從左上角開始,總共有 3 條路徑可以到達右下角。向右...
leetcode 第62題 不同路徑 動態規劃
我小時候還經常想這一類的問題呢,哈哈。題目 乙個機械人位於乙個 m x n 網格的左上角 起始點在下圖中標記為 start 機械人每次只能向下或者向右移動一步。機械人試圖達到網格的右下角 在下圖中標記為 finish 問總共有多少條不同的路徑?首先想到的是遞迴,但是用的時間太長了。還是用動態規劃比較...