Leetcode—第70题

爬梯子问题:需要爬一个n阶梯顶,每次可以爬1步或2步,请问有多少中方法?

分析:对于第n阶梯子,即顶端,可以1步爬上去,也可以2步爬上去,那么方法数等于两种爬法的总和,即爬上第n-1阶梯子的方法加上爬上第n-2阶梯子的方法,

可以得到一个关系式,F(n)=F(n-1)+F(n-2),这个式子就是斐波那契数列的关系式(其实它是有通项公式的,可以在百科上查到)。而对于1阶梯子,F(1)=1,而2阶梯子,F(2)=2,依此类推

这种有关状态问题一般用动态规划算法,即DP算法,来解决。

Leetcode—第70题

上述解法一递归的方法耗时太长,不建议使用。

除了上述解法,还可以有其它解法,详情请参考:

https://yq.aliyun.com/articles/3876

http://blog.****.net/linhuanmars/article/details/23976963