Leetcode刷题6—不同路径

一、要求

 

 二、知识点

   这道题属于动态规划,主要思路就是将大问题不断分解成小问题进行求解

三、解题思路

1、利用数学思路找规律

将m和n组合成一个m*n的矩阵,而且是一个对称阵

[[0],[1],[1],[1],[1],[1],[1]...
[1],[2],[3],[4],[5],[6],[7]...
[1],[3],[6],[10],[15],[21],[28]...
....
]
可以看出f(m,n)=f(m-1,n)+f(m,n-1)

然后要做的就是把二维数组打开成一维数组

 

2、利用递归的思路 

不停地分解直到m或n有一方为1,并计算分解出来子树的个数,这样肯定可以做出来,但是会超过他的时间范围

 

posted @ 2019-12-11 10:07  bethansy  阅读(178)  评论(0编辑  收藏  举报