【leetcode】不同路径

class Solution {
        public int uniquePaths(int m, int n) {
            int dp[][] = new int[m][n];
            int i,j,k;
            for (i = 0; i< m; i++) {
                dp[i][0] = 1;
            }
            for (i = 0; i< n; i++) {
                dp[0][i] = 1;
            }
            for (i = 1; i< m; i++) {
                for (j = 1; j< n; j++) {
                    dp[i][j] = dp[i-1][j]+dp[i][j-1];
                }
            }
            return dp[m-1][n-1];
        }
    }

 

 

 

 

因为只能往右、往下走,所以到达某格子的路径数等于到达它上边一个格子的路径数+到达它左边一个格子的路径数之和。

画个图就一目了然了。

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章