LeetCode62 不同路徑

2022-06-08 18:09:09 字數 518 閱讀 5789

dp【i】【j】代表從(0,0)出發走到(i,j)位置上有多少種路徑。關於dp陣列的初始化,由於機械人每次只能向右或者向下移動一步。所以第 0  行和第 0 列dp陣列初始化為 1。動態轉移方程:

dp[i][j] =  dp[i - 1][j] + dp[i][j - 1],因為dp[i][j]只有這兩個方向過來。遍歷順序,從左上到右下。

1

class

solution 11}

12return dp[m-1][n-1

];13

}14 };

時間複雜度為o(m * n) ,空間複雜度o(m * n)

注意上面的dp陣列可以優化為一維陣列,這裡不展開,以後總結下滾動陣列的思想。

直接按照圖的深搜,但是時間會超時

1

class

solution

8int uniquepaths(int m, int

n) 11 };

指數級的時間複雜度。

Leetcode 62 不同路徑

乙個機械人位於乙個 m x n 網格的左上角 起始點在下圖中標記為 start 機械人每次只能向下或者向右移動一步。機械人試圖達到網格的右下角 在下圖中標記為 finish 問總共有多少條不同的路徑?例如,上圖是乙個7 x 3 的網格。有多少可能的路徑?說明 m 和 n 的值均不超過 100。示例 ...

leetcode 62 不同路徑

時間複雜度o n2 def uniquepaths m,n 計算路徑的個數 memo 0 for j in range n for i in range m for i in range m for j in range n if i 0 and j 0 memo i j 1 elif j 0 me...

LeetCode 62 不同路徑

乙個機械人位於乙個 m x n 網格的左上角 起始點在下圖中標記為 start 機械人每次只能向下或者向右移動一步。機械人試圖達到網格的右下角 在下圖中標記為 finish 問總共有多少條不同的路徑?例如,上圖是乙個7 x 3 的網格。有多少可能的路徑?說明 m 和 n 的值均不超過 100。示例 ...