不同路径代码C++
时间: 2023-07-10 14:16:03 浏览: 155
最短路径C++代码.zip
好的,以下是一个简单的C++代码,用于解决不同路径问题(LeetCode第62题):
```cpp
class Solution {
public:
int uniquePaths(int m, int n) {
vector<vector<int>> dp(m, vector<int>(n, 0)); //创建一个m*n的二维数组dp,初始化为0
for (int i = 0; i < m; ++i) {
for (int j = 0; j < n; ++j) {
if (i == 0 || j == 0) //第一行和第一列的路径数都是1
dp[i][j] = 1;
else
dp[i][j] = dp[i-1][j] + dp[i][j-1]; //转移方程
}
}
return dp[m-1][n-1]; //返回右下角的路径数
}
};
```
这个代码使用了动态规划的思路,将每个位置的路径数记录在一个二维数组中,然后通过转移方程来计算每个位置的路径数。具体来说,对于每个位置(i,j),它的路径数等于从上方(i-1,j)和左方(i,j-1)到达该位置的路径数之和。最后返回右下角的路径数即可。
希望这个代码能对您有所帮助。
阅读全文