LintCode_不同的路径
来源:互联网 发布:韩风男装淘宝店 编辑:程序博客网 时间:2024/05/22 19:26
问题描述:
有一个机器人的位于一个M×N个网格左上角(下图中标记为'Start')。
1,2
1,3
1,4
1,5
1,6
1,7
2,1
3,1
3,7
以上3 x 7的网格中,有多少条不同的路径?
算法思想:关键点在于:(m,n)=(m-1,n)+(m,n-1);
方法一:递归算法(这种算法虽然可以用,但是比较耗时间)
public int uniquePaths(int m, int n) {
if(m==1||n==1){
return 1;
}
if(m==2){
return n;
}
if(n==2){
return m;
}
return uniquePaths(m-1,n)+uniquePaths(m,n-1);
}
方法二:采用数组存储路径数:
public int uniquePaths(int m, int n) {
int[][] path=new int[100][100];
for(int i=0;i<n;i++){
path[0][i]=1;
}
for(int j=0;j<m;j++){
path[j][0]=1;
}
for(int p=1;p<m;p++){
for(int q=1;q<n;q++){
path[p][q]=path[p-1][q]+path[p][q-1];
}
}
return path[m-1][n-1];
}
- LintCode_不同的路径
- LintCode_尾部的零
- LintCode_有效的括号序列
- 不同的路径
- 题目 :不同的路径
- LintCode -- 不同的路径
- LintCode 不同的路径
- 不同的路径
- 不同的路径 II
- 不同的路径
- 不同的路径
- LintCode:不同的路径
- 不同的路径
- 不同的路径 II
- 不同的路径
- 不同的路径 II
- LintCode :不同的路径
- 不同的路径
- 一些关于style和attr的使用问题
- 二线蓝筹股
- NOI2015酱油记
- Hadoop优化点记录
- 归算法及经典递归例子代码实现
- LintCode_不同的路径
- Oracle函数之非常实用的统计查询
- 自定义View实现支付宝芝麻信用页面功能
- Mybatis基本配置和搭建
- 蓝懿iOS 技术内容和心得 10。28技术内容交流和心得分享
- 2015-10-28
- 显式调用构造函数和析构函数
- Hadoop2.x下安装HBase
- 私有构造函数