动态规划算法的应用

动态规划算法的应用

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);

    }
相关推荐
思麟呀29 分钟前
背包DP(01背包+完全背包)
c++·算法
笑容掩饰我的失落2 小时前
区块链从小白到精通(七):Solidity 语法精讲——数据类型、函数、修饰器与事件
算法·区块链·php·智能合约·哈希算法
Pniubi2 小时前
力扣24. 两两交换链表中的节点(递归)
算法·leetcode·链表
꧁细听勿语情꧂3 小时前
直接选择排序,堆排序,冒泡排序,递归快速排序、hoare版本、挖坑法、lomuto前后指针,非递归快速排序
c语言·开发语言·数据结构·算法
俊俊几年的4 小时前
动态规划(Dynamic Programming)详解:从入门到 LeetCode Hot 100
linux·c++·算法·leetcode·嵌入式·动态规划·c
小雉系统13 小时前
BcoreOS安全通信架构:FsSession 抗算法后门安全设计
算法·安全·架构
唐墨12317 小时前
linux kernel 比较数据大小的宏定义
linux·算法
拂拉氏17 小时前
【知识讲解-题目讲解】 统计满足K约束的子字符串数量2 (滑动窗口+前缀和+二分查找+分析)
算法·前缀和·二分查找·滑动窗口
通信小呆呆1 天前
电子战抗干扰技术:当“不被干扰”成为一种系统
算法·通信·mimo·isac