File tree Expand file tree Collapse file tree 2 files changed +47
-0
lines changed
Expand file tree Collapse file tree 2 files changed +47
-0
lines changed Original file line number Diff line number Diff line change 1+ """ Fibonacci sequence. """
2+
3+
4+ def fib (n ):
5+ if n < 2 :
6+ return 1
7+ else :
8+ return fib (n - 1 ) + fib (n - 2 )
9+
10+
11+ def fib_iter (n ):
12+ n_minus_1 = 1
13+ n_minus_2 = 0
14+ current = 1
15+ for i in range (n ):
16+ current = n_minus_1 + n_minus_2
17+ n_minus_2 = n_minus_1
18+ n_minus_1 = current
19+
20+ return current
21+
22+
23+ if __name__ == '__main__' :
24+ print ([fib (i ) for i in range (10 )])
25+ print ([fib_iter (i ) for i in range (10 )])
26+ print (fib_iter (1000 ))
27+
Original file line number Diff line number Diff line change 1+ """ Reverse function recursively and iteratively. """
2+
3+
4+ def reverse (lst ):
5+ if lst == []:
6+ return lst
7+ else :
8+ return reverse (lst [1 :]) + [lst [0 ]]
9+
10+
11+ def reverse_iter (lst ):
12+ for i in range (len (lst ) // 2 ):
13+ lst [i ], lst [- 1 * (i + 1 )] = lst [- 1 * (i + 1 )], lst [i ]
14+ return lst
15+
16+
17+ if __name__ == '__main__' :
18+ print (reverse (range (10 )))
19+ print (reverse_iter (range (10 )))
20+
You can’t perform that action at this time.
0 commit comments