跳台阶 一、题目描述 一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。 二、算法思想 这题与斐波那契数列几乎一致,写出头两项的值,然后知道每个n的跳法种数F(n)与它的前两项F(n 1)、F(n 2)有关。 n层的楼梯,若第一次跳 ...
分类:
其他好文 时间:
2019-02-06 19:47:42
阅读次数:
182
斐波那契数列 一、题目描述 大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项(从0开始,第0项为0)。 n ...
分类:
其他好文 时间:
2019-02-06 10:47:12
阅读次数:
211
整数快速幂: 为了引出矩阵的快速幂,以及说明快速幂算法的好处,我们可以先求整数的幂。 如果现在要算X^8:则 XXXXXXXX 按照寻常思路,一个一个往上面乘,则乘法运算进行7次。 (XX)(XX)(XX)(XX) 这种求法,先进行乘法得X^2,然后对X^2再执行三次乘法,这样去计算,则乘法运算执行 ...
分类:
其他好文 时间:
2019-02-05 15:37:54
阅读次数:
194
题目描述 题解: 听说叫斐波那契博弈。 先手必败当且仅当当前数目为斐波那契数列中的数。 代码: ...
分类:
其他好文 时间:
2019-02-04 15:28:47
阅读次数:
157
斐波那契数列 指的是这样一个数列 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233,377,610,987,1597,2584,4181,6765,10946,17711,28657,46368........ 这个数列从第3项开始,每一项都等于前两项之和 ...
分类:
其他好文 时间:
2019-01-30 00:14:52
阅读次数:
191
任何一个大学生对菲波那契数列(Fibonacci numbers)应该都不会陌生,它是这样定义的: F(1)=1; F(2)=2; F(n)=F(n-1)+F(n-2)(n>=3); 所以,1,2,3,5,8,13……就是菲波那契数列。 在HDOJ上有不少相关的题目,比如1005 Fibonacci ...
分类:
其他好文 时间:
2019-01-28 21:17:37
阅读次数:
180
假设一个楼梯有 N 阶台阶,人每次最多可以跨 2 阶,求总共的爬楼梯方案数。这里使用非递归实现:先不写代码,自己计算当楼梯数为1/2/3/4/5时,对应的爬法有1/2/3/5/8/13/21种。可以发现,随着楼梯数N的增加,爬法总数呈现斐波那契数列规律增加,即f(n) = f(n-1) + f(n- ...
分类:
编程语言 时间:
2019-01-28 20:13:20
阅读次数:
180
迭代器 迭代器在 Python 2.2 版本中被加入, 它为类序列对象提供了一个类序列的接口。 Python 的迭代无缝地支持序列对象, 而且它还允许迭代非序列类型, 包括用户定义的对象。即迭代器可以迭代不是序列但表现出序列行为的对象, 例如字典的 key , 一个文件的行, 等等。迭代器有以下特性 ...
分类:
编程语言 时间:
2019-01-27 16:49:18
阅读次数:
178
递归算法虽然容易理解,但我们可能时常忘记使用它。我就只记得算法课上老师讲过的场景:斐波那契数列,汉诺塔这两个例子。偶尔看到b站上一个C语言视频里面用递归求解进制转换的例子,突然之间恍然大悟,想着记录下来。 下面是一个求解二进制的程序代码 ...
分类:
其他好文 时间:
2019-01-26 23:48:50
阅读次数:
305