菲波那切数列(Fibonacci Number)】的更多相关文章

什么是菲波那切数列?自己google一下,面试题里面经常遇到,考试递归算法用的. 在菲波那切数列中用递归不太好.第三种算法最好. 第一 递归算法最差了,不想说.测试一下,当N=6000时,半天出不来数据,有想砸电脑的冲动. 第二 数组 在N变大后,空间浪费严重. 第三 队列 最好 只使用2个队列的空间,时间复杂度O(1) 常数级. 1 递归算法 最差的算法 也是比较经典的 得会 class Solution { public int fib(int N) { if(N==1){ return 1…
KK's Steel Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)Total Submission(s): 350    Accepted Submission(s): 166 Problem Description Our lovely KK has a difficult mathematical problem:he has a N(1≤N≤1018) meters s…
1.递归  显示斐波那契数列 <?PHP         function recursion($num){               //判断是否小于0               if($num<0){                      return -1;               }              if($num==1){                     return 0;               }              if($num==2…
#include <stdio.h> #include <math.h> #include <string.h> char explode( char * str , char symbol ); double distance ( int x1 , int y1 , int x2 , int y2 ); // 求平面上2个坐标点的直线距离 double circle_area( double radius ); // 求圆面积. radius 半径 double tw…
#本文是牛客网<剑指offer>刷题笔记 1.题目 写入一个函数,输入n,输出裴波那切数列的第n项 2.思路 递归--时间和空间复杂度高 循环--时间和空间复杂度低,通过循环迭代计算第n项,首先根据f(0)和f(1)计算f(2),在根据f(1)和f(2)计算f(3),依次类推计算出第n项. 3.code class Solution { public: int Fibonacci(int n) { // n==0 if(n<=0) return 0; // n==1 if(n==1) r…
def fib(n): # write Fibonacci series up to n """Print a Fibonacci series up to n.""" a, b = 0, 1 while b < n: print(b) a, b = b, a+b >>>fib(2000) 1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597 我们可以编写一个函数来生成有给…
时间复杂度 ​ 用来估计算法运行时间的一个式子. ​ 一般来说, 时间复杂度高的算法比复杂度低的算法慢. 常见的时间复杂度: ​ O(1) < O(logn) < O(n) < O(nlogn) < O(n2) < O(n2logn) < O(n3) 快速判断时间复杂度 ​ 循环减半的过程---> O(logn) ​ 几层循环就是n的几次方的复杂度 空间复杂度 ​ 用来评估算法内存占用大小的一个式子 ​ 空间可以换时间 递归 递归的两个特点 ​ 调用自身 ​ 终止…
裴波那切数列可以用生成器较好的去生成,直接上代码: # 1 控制最大数字版本 def fib(max): x,y = 0,1 while y < max: yield x x,y = y,x+y print [x for x in fib(100)] # 输出[0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55] # 2 控制迭代个数版本 def fib(count): x,y,n = 0,1,1 while n < count: yield x x,y = y,x+y n…
program fbnq;{输出菲波拉契数列的前10项} var a:..] of integer; i:integer; begin a[]:=; a[]:=; do a[i]:=a[i-]+a[i-]; do begin write(a[i],' '); end; readln; end.…
1.链接地址: http://bailian.openjudge.cn/practice/2753 2.题目: 总时间限制: 1000ms 内存限制: 65536kB 描述 菲波那契数列是指这样的数列: 数列的第一个和第二个数都为1,接下来每个数都等于前面2个数之和.给出一个正整数a,要求菲波那契数列中第a个数是多少. 输入 第1行是测试数据的组数n,后面跟着n行输入.每组测试数据占1行,包括一个正整数a(1 <= a <= 20) 输出 输出有n行,每行输出对应一个输入.输出应是一个正整数,…