114. 不同的路径

Posted 三人木君

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了114. 不同的路径相关的知识,希望对你有一定的参考价值。

有一个机器人的位于一个 m × n 个网格左上角。

机器人每一时刻只能向下或者向右移动一步。机器人试图达到网格的右下角。

问有多少条不同的路径?

 注意事项

n和m均不超过100

 

样例

给出 m = 3 和 n = 3, 返回 6.
给出 m = 4 和 n = 5, 返回 35.

 
一个比较典型的DP问题,可以把题目转换成从左下角到右上角,只能往东北方向移动,结果是一样的。
令从出发点到某个点(i,j)的所有可能路径数量为P(i, j)
那么可以写出update公式,P(i,j)=P(i-1, j)+ P (i, j-1)
Basecase我们需要初始化出发点为1.
 
 1 int uniquePaths(int m, int n) {
 2         // write your code here
 3         vector<vector<int>> matrix(m, vector<int>(n, 1));
 4         for(int i=1;i<m;i++){
 5             for(int j=1;j<n;j++){
 6                 matrix[i][j]=matrix[i-1][j]+matrix[i][j-1];
 7             }
 8         }
 9         return matrix[m-1][n-1];
10     }

 

以上是关于114. 不同的路径的主要内容,如果未能解决你的问题,请参考以下文章

114. 不同的路径

LintCode 114. 不同的路径

LintCode_114 不同的路径

p114 路径数量(含障碍物)(leetcode 63)

SecurityError:replaceState 无法将历史记录更新为在路径、查询或片段以外的组件中不同的 URL

iOS xcode 代码片段