mirror of
https://github.com/youngyangyang04/leetcode-master.git
synced 2025-07-09 19:44:45 +08:00
Update 0509.斐波那契数.md
This commit is contained in:
@ -230,17 +230,41 @@ class Solution:
|
|||||||
return dp[n]
|
return dp[n]
|
||||||
|
|
||||||
```
|
```
|
||||||
动态规划(版本二)
|
态规划(版本二)
|
||||||
|
```python
|
||||||
|
|
||||||
|
class Solution:
|
||||||
|
def fib(self, n: int) -> int:
|
||||||
|
if n <= 1:
|
||||||
|
return n
|
||||||
|
|
||||||
|
dp = [0, 1]
|
||||||
|
|
||||||
|
for i in range(2, n + 1):
|
||||||
|
total = dp[0] + dp[1]
|
||||||
|
dp[0] = dp[1]
|
||||||
|
dp[1] = total
|
||||||
|
|
||||||
|
return dp[1]
|
||||||
|
|
||||||
|
|
||||||
|
```
|
||||||
|
动态规划(版本三)
|
||||||
```python
|
```python
|
||||||
class Solution:
|
class Solution:
|
||||||
def fib(self, n: int) -> int:
|
def fib(self, n: int) -> int:
|
||||||
if n < 2:
|
if n <= 1:
|
||||||
return n
|
return n
|
||||||
a, b, c = 0, 1, 0
|
|
||||||
for i in range(1, n):
|
prev1, prev2 = 0, 1
|
||||||
c = a + b
|
|
||||||
a, b = b, c
|
for _ in range(2, n + 1):
|
||||||
return c
|
curr = prev1 + prev2
|
||||||
|
prev1, prev2 = prev2, curr
|
||||||
|
|
||||||
|
return prev2
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
```
|
```
|
||||||
|
Reference in New Issue
Block a user