Fibonacci dizisi
Bu egzersizde, doğada çokça karşına çıkan Fibonacci dizisini uygulayacaksın. Dizi şu şekilde görünür: "0, 1, 1, 2, 3, 5, 8…". Diziyi üreten algoritmanın özyinelemeli (recursive) bir uygulamasını yazacaksın.
İlk sayılar 0 ve 1'dir, geri kalanı ise kendilerinden önce gelen iki sayının toplamıdır.
Bu diziyi özyinelemeli olarak şöyle tanımlayabiliriz: \(fib(n)=fib(n-1)+fib(n-2)\), burada \(fib(0)=0\) ve \(fib(1)=1\) ve \(n\) dizideki \(n\). sırayı ifade eder.
İlk adımda, Fibonacci'yi özyineleme kullanarak kodlayacaksın. İkinci adımda ise dinamik programlama kullanarak geliştirecek ve alt problemlerin çözümlerini cache değişkeninde saklayacaksın.
Bu egzersiz
Python'da Veri Yapıları ve Algoritmalar
kursunun bir parçasıdırUygulamalı interaktif egzersiz
Bu örnek kodu tamamlayarak bu egzersizi bitirin.
def fibonacci(n):
# Define the base case
if ____ <= ____:
return n
else:
# Call recursively to fibonacci
____
print(fibonacci(6))