题意: 其中,$f(1)=1,f(2)=1$。 "传送门" 分析: 首先先看斐波那契数列的几何意义: 图中各数字为正方形的边长。 可以发现其面积关系刚好满足题目中的等式: $$\sum_{i=1}^{n}{f(i)}=f(n)\times f(n+1)$$ 因此 $f(n)$ 实际上就是斐波那契数列 ...
分类:
其他好文 时间:
2020-04-15 17:57:21
阅读次数:
69
题目描述 大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项(从0开始,第0项为0)。 n<=39 public class Solution { public int Fibonacci(int n) { if(n == 0){ return 0; }else if(n= ...
分类:
其他好文 时间:
2020-04-14 22:42:27
阅读次数:
62
[TOC] 11.矩形覆盖 我们可以用2\ 1的小矩形横着或者竖着去覆盖更大的矩形。请问用n个2\ 1的小矩形无重叠地覆盖一个2\ n的大矩形,总共有多少种方法? 比如n=3时,2\ 3的矩形块有3种覆盖方法: 斐波那契数列的应用 第一次竖着放一块类比为走一步,第一次横着放两块类比为走两步 代码与上 ...
分类:
其他好文 时间:
2020-04-12 12:13:10
阅读次数:
63
AVL树说明: 该树是一种高度平衡的二叉搜索树,该树中的每一个结点左右子树的高度至多相差1。 AVL树本身也是一个二叉搜索树。 斐波那契数列: 1、1、2、3、5、8、13、21、34、…… 其递推式定义为:F(1) = 1, F(2) = 1, F(n) = F(n-1) + F(n-2) (n> ...
分类:
其他好文 时间:
2020-04-11 23:57:28
阅读次数:
123
题目:大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项(从0开始,第0项为0)。 代码如下 1 public class Demo7 { 2 3 public static void main(String[] args) { 4 int fibonacci = Fibo ...
分类:
其他好文 时间:
2020-04-11 19:01:30
阅读次数:
69
1 sum = 0 2 a,b = 0,1 3 while b < 4000000: 4 if b%2 == 0: 5 sum += b 6 a,b = b,a+b 7 print(sum) ...
分类:
其他好文 时间:
2020-04-07 09:36:03
阅读次数:
56
static IEnumerable<int> Fibs(int count) { for (int i = 0,prevFib=1,curFib=1; i < count; i++) { yield return prevFib; int newFib = prevFib + curFib; pr ...
递归:函数自己调用自己,函数的这种嵌套作用;一般会有个通项公式(山里有座庙一直持续下去(盗梦空间),不知道什么时候结束,回到现在) 1.写数据算法时,可以不用考虑内部是怎么计算的,只管实现自己调用的思想; 2.相当于把循环for递推换成了选择if递归,容易理解,但效率低了点。 例1:求一个数的阶乘 ...
分类:
其他好文 时间:
2020-04-05 11:33:41
阅读次数:
86
一.基本结构图 二.典例 1.以斐波那契递归为例: Fibonacci(int n) { if (n==1||n==0) return 1; // basis else return Fibonacci(n-1)+Fibonacci(n-2);//递归进行 } 我们找到了解决斐波那契数的方法,但是通 ...
分类:
编程语言 时间:
2020-03-31 12:08:41
阅读次数:
89
1. 斐波那契数列 显然,如果我们打算直接递归计算它的每个值,会有重复计算的部分,这个时候我们可以考虑把得到的值存起来,每次调用。 首先,会自然的想到用数组存下,每次计算下标的前两位的值。 但是随后我们边发现,其实每次都只需要保留最后两个数的值就能计算出下一个数的值了。这样减少了存储空间的占用。 2 ...
分类:
编程语言 时间:
2020-03-30 23:32:04
阅读次数:
100