File tree 2 files changed +6
-4
lines changed
2 files changed +6
-4
lines changed Original file line number Diff line number Diff line change
1
+ //计算阶乘
1
2
export function factorialIterative ( number ) {
2
3
if ( number < 0 ) {
3
4
return undefined ;
@@ -17,4 +18,4 @@ export function factorial(n) {
17
18
return 1 ;
18
19
}
19
20
return n * factorial ( n - 1 ) ;
20
- }
21
+ }
Original file line number Diff line number Diff line change
1
+ //斐波那契数列
1
2
export function fibonacci ( n ) {
2
3
if ( n < 1 ) {
3
4
return 0 ;
@@ -7,7 +8,7 @@ export function fibonacci(n) {
7
8
}
8
9
return fibonacci ( n - 1 ) + fibonacci ( n - 2 ) ;
9
10
}
10
-
11
+ //迭代
11
12
export function fibonacciIterative ( n ) {
12
13
if ( n < 1 ) { return 0 ; }
13
14
let fibNMinus2 = 0 ;
@@ -20,7 +21,7 @@ export function fibonacciIterative(n) {
20
21
}
21
22
return fibN ;
22
23
}
23
-
24
+ //尾调用优化
24
25
export function fibonacciMemoization ( n ) {
25
26
if ( n < 1 ) { return 0 ; }
26
27
const memo = [ 0 , 1 ] ;
@@ -29,4 +30,4 @@ export function fibonacciMemoization(n) {
29
30
return ( memo [ num ] = fibonacciMem ( num - 1 ) + fibonacciMem ( num - 2 ) ) ;
30
31
} ;
31
32
return fibonacciMem ( n ) ;
32
- }
33
+ }
You can’t perform that action at this time.
0 commit comments