动态规划算法的应用

动态规划算法的应用

LeetCode:一只青蛙一次可以跳上1级台阶,也可以跳上2级台阶。求该青蛙跳上一个 10 级的台阶总共有多少种跳法。

思考:

复制代码
/**
 * 一只青蛙一次可以跳上1级台阶,也可以跳上2级台阶。求该青蛙跳上一个 10 级的台阶总共有多少种跳法。
 * 自顶向下思考:
 * 第10级:可以从第8级、第9级
 * 第9级:可以从第8级、第7级
 * ......
 *
 * 第2级:从第1级 2
 * 第1级:1
 *
 */

/**
     * 递归求解
     * @param step
     * @return
     */
    public static int stepNumWays(int step) {

        if (step == 1) {
            return 1;
        }

        if (step == 2){
            return 2;
        }

        return stepNumWays(step - 1) + stepNumWays(step - 2);

    }
相关推荐
10岁的博客13 分钟前
二维差分算法高效解靶场问题
java·服务器·算法
轻微的风格艾丝凡13 分钟前
锂电池 SOC 估计技术综述:成熟算法、新颖突破与车企应用实践
算法·汽车
Codeking__15 分钟前
动态规划算法经典问题——01背包问题
算法·动态规划
R-G-B15 分钟前
归并排序 (BM20 数组中的逆序对)
数据结构·算法·排序算法
少许极端17 分钟前
算法奇妙屋(十二)-优先级队列(堆)
数据结构·算法·leetcode·优先级队列··图解算法
kupeThinkPoem1 小时前
哈希表有哪些算法?
数据结构·算法
小白程序员成长日记1 小时前
2025.11.16 力扣每日一题
算法
Kuo-Teng2 小时前
LeetCode 118: Pascal‘s Triangle
java·算法·leetcode·职场和发展·动态规划
Greedy Alg2 小时前
LeetCode 32. 最长有效括号(困难)
算法
ShineWinsu3 小时前
对于数据结构:链式二叉树的超详细保姆级解析—中
数据结构·c++·算法·面试·二叉树·校招·递归