Trong bài viết này, chúng ta sẽ tìm hiểu về giải pháp và cách tiếp cận để giải quyết vấn đề đã cho.
Tuyên bố sự cố − Nhiệm vụ của chúng tôi là tính số Fibonacci thứ n.
Dãy Fn của các số Fibonacci được cho bởi quan hệ lặp lại được đưa ra dưới đây
Fn =Fn-1 + Fn-2
với các giá trị hạt giống (tiêu chuẩn)
F0 =0 và F1 =1.
Chúng tôi có hai giải pháp khả thi cho vấn đề
- Phương pháp đệ quy
- Phương pháp tiếp cận động
Phương pháp tiếp cận 1 − Phương pháp tiếp cận đệ quy
Ví dụ
#recursive approach def Fibonacci(n): if n<0: print("Fibbonacci can't be computed") # First Fibonacci number elif n==1: return 0 # Second Fibonacci number elif n==2: return 1 else: return Fibonacci(n-1)+Fibonacci(n-2) # main n=10 print(Fibonacci(n))
Đầu ra
34
Tất cả các biến được khai báo trong phạm vi toàn cục như thể hiện trong hình ảnh bên dưới
Phương pháp tiếp cận 2 - Phương pháp tiếp cận động lực học
Ví dụ
#dynamic approach Fib_Array = [0,1] def fibonacci(n): if n<0: print("Fibbonacci can't be computed") elif n<=len(Fib_Array): return Fib_Array[n-1] else: temp = fibonacci(n-1)+fibonacci(n-2) Fib_Array.append(temp) return temp # Driver Program n=10 print(fibonacci(n))
Đầu ra
34
Tất cả các biến được khai báo trong phạm vi toàn cục như thể hiện trong hình ảnh bên dưới
Kết luận
Trong bài viết này, chúng ta đã tìm hiểu về phương pháp tính toán số Fibonacci