Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit cd9dd9f

Browse files
realDuYuanChaogithub-actions
and
github-actions
authored
add fibonacci (#35)
* add fibonacci * Formatted with psf/black Co-authored-by: github-actions <${GITHUB_ACTOR}@users.noreply.github.com>
1 parent e8fbb1b commit cd9dd9f

File tree

3 files changed

+99
-0
lines changed

3 files changed

+99
-0
lines changed

‎maths/fibonacci.py‎

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
def fibonacci(number: int) -> int:
2+
"""
3+
>>> fibonacci(0)
4+
0
5+
>>> fibonacci(1)
6+
1
7+
>>> fibonacci(2)
8+
1
9+
>>> fibonacci(3)
10+
2
11+
>>> fibonacci(4)
12+
3
13+
>>> fibonacci(5)
14+
5
15+
>>> fibonacci(6)
16+
8
17+
>>> fibonacci(7)
18+
13
19+
>>> fibonacci(8)
20+
21
21+
"""
22+
first_item = 0
23+
second_item = 1
24+
for i in range(0, number):
25+
temp = first_item + second_item
26+
first_item = second_item
27+
second_item = temp
28+
return first_item
29+
30+
31+
if __name__ == "__main__":
32+
from doctest import testmod
33+
34+
testmod()

‎maths/fibonacci_recursion.py‎

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
def fibonacci(number: int) -> int:
2+
"""
3+
>>> fibonacci(0)
4+
0
5+
>>> fibonacci(1)
6+
1
7+
>>> fibonacci(2)
8+
1
9+
>>> fibonacci(3)
10+
2
11+
>>> fibonacci(4)
12+
3
13+
>>> fibonacci(5)
14+
5
15+
>>> fibonacci(6)
16+
8
17+
>>> fibonacci(7)
18+
13
19+
>>> fibonacci(8)
20+
21
21+
"""
22+
return (
23+
number
24+
if number == 0 or number == 1
25+
else fibonacci(number - 1) + fibonacci(number - 2)
26+
)
27+
28+
29+
if __name__ == "__main__":
30+
from doctest import testmod
31+
32+
testmod()

‎maths/fibonacci_with_list.py‎

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
def fibonacci(number: int) -> int:
2+
"""
3+
>>> fibonacci(0)
4+
0
5+
>>> fibonacci(1)
6+
1
7+
>>> fibonacci(2)
8+
1
9+
>>> fibonacci(3)
10+
2
11+
>>> fibonacci(4)
12+
3
13+
>>> fibonacci(5)
14+
5
15+
>>> fibonacci(6)
16+
8
17+
>>> fibonacci(7)
18+
13
19+
>>> fibonacci(8)
20+
21
21+
"""
22+
fibs = [0] * (number + 2)
23+
fibs[0] = 0
24+
fibs[1] = 1
25+
for i in range(2, number + 1):
26+
fibs[i] = fibs[i - 1] + fibs[i - 2]
27+
return fibs[number]
28+
29+
30+
if __name__ == "__main__":
31+
from doctest import testmod
32+
33+
testmod()

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /