美文网首页
[算法] - 上台阶问题(动态规划)

[算法] - 上台阶问题(动态规划)

作者: 夹胡碰 | 来源:发表于2021-03-18 16:02 被阅读0次

    1. 问题

    有十级台阶,每次只能上一级或者两级,问一共有多少种组合。

    2. 代码

    package com.jfp;
    
    /**
     * @author jiafupeng
     * @desc
     * @create 2021/3/17 14:37
     * @update 2021/3/17 14:37
     **/
    public class Test2 {
    
        static int getClimbingWays(int n){
            if(n < 1){
                return 0;
            }
    
            if(n == 1){
                return 1;
            }
    
            if(n == 2){
                return 2;
            }
    
            int a = 1;
            int b = 2;
            int sum = 0;
            for(int i = 3;i<=n;i++){
                sum = a + b;
                a = b;
                b = sum;
            }
    
            return sum;
        }
    
        public static void main(String[] args) {
            int climbingWays = getClimbingWays(10);
            System.out.println(climbingWays);
        }
    }
    

    3. 参考

    1. 漫画:什么是动态规划?(整合版) - 小灰

    相关文章

      网友评论

          本文标题:[算法] - 上台阶问题(动态规划)

          本文链接:https://www.haomeiwen.com/subject/edcecltx.html