用递归将问题分解为规模更小的子问题进行求解 爬楼梯 树老师爬楼梯,他可以每次走1级或者2级,输入楼梯的级数,求不同的走法数。 例如:楼梯一共有3级,他可以每次都走一级,或者第一次走一级,第二次走两级,也可以第一次走两级,第二次走一级,一共3中方法。 输入 输入包括若干行,每行包含一个正整数N,代表楼 ...
分类:
编程语言 时间:
2020-02-29 15:09:03
阅读次数:
95
题目描述(动态规划) 有一楼梯共m级,刚开始时你在第一级,若每次只能跨上一级或二级,要走上第m级,共有多少走法? 注:规定从一级到一级有0种走法。 输入 输入数据首先包含一个整数n(1<=n<=100),表示测试实例的个数,然后是n行数据,每行包含一个整数m,(1<=m<=40), 表示楼梯的级数。 ...
分类:
其他好文 时间:
2020-02-26 21:05:10
阅读次数:
77
9.变态跳台阶 题目 一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。 思路 与上题相似,假设要到3级,那么可以从0,1,2级直接到三级,那么f3=f1+f2+1,f2=f1+1,f3=4,找规律。 也可以换一种思路,不限制长度,那就是每 ...
分类:
其他好文 时间:
2020-02-26 16:49:16
阅读次数:
60
力扣第70题:爬楼梯 假设你正在爬楼梯。需要 n 阶你才能到达楼顶。 每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢? 注意:给定 n 是一个正整数。 示例 1: 输入: 2 输出: 2 解释: 有两种方法可以爬到楼顶。 1. 1 阶 + 1 阶 2. 2 阶 示例 2: 输入 ...
分类:
其他好文 时间:
2020-02-26 01:45:06
阅读次数:
74
题目描述 一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。 思路 当台阶为1级时,共1种方法;当为2级时,共2种方法;当为3级时,共3中方法。以此类推,有n级台阶时,共f(n)=f(n 1)+f(n 2), n 2, f(1) = ...
分类:
其他好文 时间:
2020-02-25 00:21:40
阅读次数:
80
"LeetCode题解汇总(持续更新,并将逐步迁移到本博客列表中)" 剑指Offer 数据结构 链表 序号 | 题目 | 难度 | | 06 | "从尾到头打印链表" | 简单 18 | "删除链表的节点" | 简单 22 | "链表中倒数第k个节点" | 简单 二叉树 序号 | 题目 | 难度 | ...
分类:
其他好文 时间:
2020-02-20 22:16:17
阅读次数:
161
一、题目说明 题目70. Climbing Stairs,爬台阶(楼梯),一次可以爬1、2个台阶,n层的台阶有几种爬法。难度是Easy! 二、我的解答 类似的题目做过,问题就变得非常简单。首先用递归方法计算: 非常不好意思, 。 那就用dp算法吧: 性能: 三、优化措施 不优化了! ...
分类:
其他好文 时间:
2020-02-20 09:18:21
阅读次数:
60
题目 一只青蛙一次可以跳上1级台阶,也可以跳上2级台阶。求该青蛙跳上一个 n?级的台阶总共有多少种跳法。 答案需要取模 1e9+7(1000000007),如计算初始结果为:1000000008,请返回 1。 示例 1: 示例 2: 提示: 思路 同 "【剑指Offer】面试题10 I. 斐波那契数 ...
分类:
其他好文 时间:
2020-02-17 19:45:07
阅读次数:
66
链接:https://leetcode-cn.com/problems/qing-wa-tiao-tai-jie-wen-ti-lcof/ 代码: class Solution { public: int numWays(int n) { std::vector<int> vec = {1, 1}; ...
分类:
其他好文 时间:
2020-02-17 17:52:45
阅读次数:
49
青蛙跳台阶 一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。 分析 最后一阶,是青蛙到达的台阶,必须存在, 其他n 1块台阶可以任意选择跳或不跳,则每个台阶有存在和不存在两种选择,n 1块台阶就有2^(n 1)种可能 ...
分类:
其他好文 时间:
2020-02-17 12:33:28
阅读次数:
72