首页 > 技术文章 > 青蛙跳台阶问题

guozhenqiang 2016-05-13 13:42 原文

问题描述:一只青蛙一次可以跳上1个台阶,也可以跳上2个台阶。问该青蛙跳上一个n级台阶总共有多少种跳法。

分析:首先考虑最简单的情况,如果只有一个台阶,那只有一种跳法,如果有两个台阶,就会有两个跳法,一次跳一阶,一次跳两阶。

        如果把n个台阶看成n的函数f(n),当n>2时,第一次跳的时候有两种选择,

                   假如跳一个台阶,那么就是后面的n-1个台阶数,

                   假如第一次跳两个台阶,那么就是后面的n-2个台阶数,

        根据排列组合里的加法原理,那么会有f(n)=f(n-1)+f(n-2). 由此可以看出这其实就是斐波那契数列。

        具体关于斐波那契数列的解法,可以参考我之前的博客文章http://www.cnblogs.com/guozhenqiang/p/5489081.html

        博客里解释的很详细,这里我就不再解释了,

推荐阅读