上台阶问题

有n阶台阶,上楼时可以一步上1阶,也可以一步上2阶,计算共有多少种不同的上楼梯的方法。

设n阶台阶共有f(n)种不同的上楼梯方法。

因为共有两种不同的步伐,故上n阶台阶的最后一步有两种情况:从n-1阶处跨一步(上1阶),从n-2阶处跨一步(上2阶)。由此f(n) = f(n-1) + f(n-2)。

代码实现如下:

    public static int step(int m) {

        if (m ==1) return 1;

        if (m == 2) return 2;

        return step(m-1) + step(m-2);
    }

 

posted on 2018-03-22 21:49  Deltadeblog  阅读(760)  评论(0编辑  收藏  举报

导航