数据结构和算法 - Fibonacci系列

Fibonacci系列通过添加两个先前的数字来生成后续数字. Fibonacci系列从两个数字开始 -   F 0 & ˚F 的. F 0 &的初始值F 1 可分别取0,1或1,1.

Fibonacci系列满足以下条件 :

 
 F  = F  + F


因此,Fibonacci系列看起来像这样去;

F 8 = 0 1 1 2 3 5 8 13

或者,这个 :

F 8 = 1 1 2 3 5 8 13 21

为了便于说明,F 8 的Fibonacci显示为 :

Fibonacci Animation

Fibonacci迭代算法

首先我们尝试起草Fibonacci系列的迭代算法.

Procedure Fibonacci(n)
   declare f0, f1, fib, loop 
   
   set f0 to 0
   set f1 to 1   
   display f0, f1
   
   for loop ← 1 to n
   
      fib ← f0 + f1   
      f0 ← f1
      f1 ← fib      display fib
   end for
	
end procedure

Fibonacci递归算法

让我们学习如何创建一个递归算法Fibonacci系列.递归的基本标准.

START
Procedure Fibonacci(n)
   declare f0, f1, fib, loop 
   
   set f0 to 0
   set f1 to 1   
   display f0, f1
   
   for loop ← 1 to n
   
      fib ← f0 + f1   
      f0 ← f1
      f1 ← fib      display fib
   end for

END