算法
johnsontse
用平实的笔记录编程路上的点点滴滴
展开
-
斐波那契数
方法一:递归public static int fib(int n) { if (n <= 1) { return 1; } return fib1(n - 1) + fib1(n - 2);}复杂度分析时间复杂度:O(2^N)O(2N)。这是计算斐波那契数最慢的方法。因为它需要指数的时间。空间复杂度:O(N)O(N),在堆栈中我们需要与 ...原创 2020-03-04 16:32:05 · 291 阅读 · 0 评论 -
古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月 后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?
古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月 后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少? 由题意分析得:第一个月有一对兔子,第二个月还是一对,到了第三个月兔子生出一对鸽子,此时有两对,到了第四个月第一个月的兔子又生一对兔子所以第四个月有3对兔子,到了第五个月第一、二个月的兔子又各生一对,所有第五个月有5对兔子,以此类推到了第六个月共有8对兔子原创 2013-07-25 14:38:08 · 5535 阅读 · 0 评论 -
斐波那契数列的递归,迭代(循环),通项公式三种实现
谓Fibonacci数列是指这样一种数列,它的前两项均为1,从第三项开始各项均为前两项之和。用数学公式表示出来就是: 1 (n=1,2)fib(n)= fib(n-1)+fib(n-2) (n>2)可以证明斐波那契数列的通项公式为fib(n) = [(1+√5)/2]^n /√5转载 2013-07-26 11:49:27 · 972 阅读 · 0 评论