Fibonacci sequence: Difference between revisions
Content added Content deleted
m (→{{header|TI-57}}: correct index) |
|||
Line 6,844: | Line 6,844: | ||
{{FormulaeEntry|page=https://formulae.org/?script=examples/Fibonacci_numbers}} |
{{FormulaeEntry|page=https://formulae.org/?script=examples/Fibonacci_numbers}} |
||
=== Recursive === |
|||
Recursive version is slow, it is O(2<sup>n</sup>), or of exponential order. |
|||
[[File:Fōrmulæ - Fibonacci sequence 01.png]] |
|||
[[File:Fōrmulæ - Fibonacci sequence 02.png]] |
|||
[[File:Fōrmulæ - Fibonacci sequence result.png]] |
|||
It is because it makes a lot of recursive calls. |
|||
To illustrate this, the following is a functions that makes a tree or the recursive calls: |
|||
[[File:Fōrmulæ - Fibonacci sequence 03.png]] |
|||
[[File:Fōrmulæ - Fibonacci sequence 04.png]] |
|||
[[File:Fōrmulæ - Fibonacci sequence 05.png]] |
|||
=== Iterative (3 variables) === |
|||
It is O(n), or of linear order. |
|||
[[File:Fōrmulæ - Fibonacci sequence 06.png]] |
|||
[[File:Fōrmulæ - Fibonacci sequence 07.png]] |
|||
[[File:Fōrmulæ - Fibonacci sequence result.png]] |
|||
=== Iterative (2 variables) === |
|||
It is O(n), or of linear order. |
|||
[[File:Fōrmulæ - Fibonacci sequence 08.png]] |
|||
[[File:Fōrmulæ - Fibonacci sequence 09.png]] |
|||
[[File:Fōrmulæ - Fibonacci sequence result.png]] |
|||
=== Iterative, using a list === |
|||
It is O(n), or of linear order. |
|||
[[File:Fōrmulæ - Fibonacci sequence 10.png]] |
|||
[[File:Fōrmulæ - Fibonacci sequence 11.png]] |
|||
[[File:Fōrmulæ - Fibonacci sequence result.png]] |
|||
=== Using matrix multiplication === |
|||
[[File:Fōrmulæ - Fibonacci sequence 12.png]] |
|||
[[File:Fōrmulæ - Fibonacci sequence 13.png]] |
|||
[[File:Fōrmulæ - Fibonacci sequence result.png]] |
|||
=== Divide and conquer === |
|||
It is an optimized version of the matrix multiplication algorithm, with an order of O(lg(n)) |
|||
[[File:Fōrmulæ - Fibonacci sequence 14.png]] |
|||
[[File:Fōrmulæ - Fibonacci sequence 15.png]] |
|||
[[File:Fōrmulæ - Fibonacci sequence result.png]] |
|||
=== Closed-form === |
|||
It has an order of O(lg(n)) |
|||
[[File:Fōrmulæ - Fibonacci sequence 16.png]] |
|||
[[File:Fōrmulæ - Fibonacci sequence 17.png]] |
|||
[[File:Fōrmulæ - Fibonacci sequence result.png]] |
|||
=={{header|GAP}}== |
=={{header|GAP}}== |