Quảng cáo
3 câu trả lời 278
Để giải bài toán này, ta có thể sử dụng phương pháp đệ quy. Đầu tiên, ta xác định điều kiện dừng của đệ quy là khi N = 0 hoặc N = 1, ta trả về giá trị F0 hoặc F1 tương ứng. Sau đó, ta sử dụng công thức đệ quy Fn = Fn-1 + Fn-2 để tính giá trị Fn.
Dưới đây là code Python để giải bài toán này:
```python
def fibonacci(n):
if n == 0:
return 1
elif n == 1:
return 1
else:
return fibonacci(n-1) + fibonacci(n-2)
n = int(input())
print(fibonacci(n))
```
Độ phức tạp của thuật toán này là O(2^n), do mỗi lần gọi đệ quy sẽ tạo ra hai lần gọi đệ quy khác. Tuy nhiên, với giá trị N nhỏ hơn 90 thì thuật toán này vẫn có thể hoạt động tốt.
Để giải bài toán này, ta có thể sử dụng phương pháp đệ quy. Đầu tiên, ta xác định điều kiện dừng của đệ quy là khi N = 0 hoặc N = 1, ta trả về giá trị F0 hoặc F1 tương ứng. Sau đó, ta sử dụng công thức đệ quy Fn = Fn-1 + Fn-2 để tính giá trị Fn.
Dưới đây là code Python để giải bài toán này:
`python
def fibonacci(n):
if n == 0:
return 1
elif n == 1:
return 1
else:
return fibonacci(n-1) + fibonacci(n-2)
n = int(input())
print(fibonacci(n))
`
Độ phức tạp của thuật toán này là O(2^n), do mỗi lần gọi đệ quy sẽ tạo ra hai lần gọi đệ quy khác. Tuy nhiên, với giá trị N nhỏ hơn 90 thì thuật toán này vẫn có thể hoạt động tốt.
`python
def fibonacci(n):
if n == 0:
return 1
elif n == 1:
return 1
else:
return fibonacci(n-1) + fibonacci(n-2)
n = int(input())
print(fibonacci(n))
`
Độ phức tạp của thuật toán này là O(2^n), do mỗi lần gọi đệ quy sẽ tạo ra hai lần gọi đệ quy khác. Tuy nhiên, với giá trị N nhỏ hơn 90 thì thuật toán này vẫn có thể hoạt động tốt.
Quảng cáo
Bạn muốn hỏi bài tập?
Câu hỏi hot cùng chủ đề
-
55309
-
31164
-
29752
