Özyineleme (Yinelge – Recursion) Nedir? | Bilgi Yağmuru
Ana Sayfa / Matematik / Özyineleme (Yinelge – Recursion) Nedir?

Özyineleme (Yinelge – Recursion) Nedir?

Özyineleme, aslında kelime olarak incelense bile anlamı ortaya çıkacaktır. Öz – Yineleme yani kendi kendini – yenileme şeklinde ayrı bir şekilde yazıldığında anlaşılacaktır.

Özyineleme (Yinelge – Recursion), en genel manasıyla bir yapının (kendi kendine) yinelenmesi olayıdır. Genel anlamda kullanımı daha çok matematik ve bilgisayar biliminde yapılmaktadır. Bu yapılara “Yinelgen” yapılar ismi verilmektedir. Yinelgen bir yapı eğer kendine gönderme yapma (atfıta bulunma) özelliğiyle yinelgen ise bu tür yapılara “Özgöndergeli” veya “Kendine-Göndergeli” yapılar denir.

Özyineleme (Yinelge – Recursion) için ortaya çıkan bir problemi çözmek için, bir yöntemin kendisini çağırdığı bir programlama tekniği şeklinde bir açıklamada yapabiliriz. Ayrıca kendisi için gerçekleştirilen bir çağrının belirli konudaki bir problemi çözmesi olarak da tanımlanabilir.

Özyineleme (Yinelge – Recursion), nesnenin kendisini içermesi veya kendi kendisi tarafından tanımlanmasıdır.

Özyineleme (Yinelge – Recursion), doğru bir şekilde kullanıldığı zaman ortada bulunan problemlere zarif çözümler sunabilen bir programlama tekniğidir.

Kullanımı, programlama kodunu ve okunabilirliğini bazı durumlar için basit hale dönüştürür. Bu programlama teknikleri ekseriyetle kodun okunulabilirliğini artırır.

Özyineleme – Örnek

Aşağıda bir Fibonacci sayı dizisinin bazı elemanlarını görüyorsunuz.

  • Fibonacci Dizisi; Her sayının kendinden öncekiyle toplanması sonucu oluşan bir sayı dizisidir.

1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, …

Verilen bir Fibonacci dizisinin her elemanı iki önceki elemanın toplamından meydana gelmektedir. Birinci ve ikinci elemanlar tanım gereği 1 değerini alırken, diğer elemanların diziliş kuralı aşağıda verilmiştir:

Tanıma göre n’inci elemanın hesaplanması için aşağıdaki özyineleme metodunu kullanırız:

Bu örnek bir çözümün uygulanması için özyineleme metotunun nasıl kullanılacağını gösteriyor. Diğer taraftan, özyineleme ile programlama yaparken sezgisel olmalısınız, çünkü programın verimliği ve hızını etkileyen pek çok faktör vardır.

Doğal Sayılar

Gerçek manada incelendiği zaman matematikte yalnızca göndermeler değil, kümeler dahil çok sayıda kavramın yinelgen olarak tanımı yapılabilir. Örneğin doğal sayılar kümesi aşağıdaki iki özelliği sağlayan en küçük kümedir:

  1. 0 bir doğal sayıdır.
  2. n bir doğal sayı ise n+1 bir doğal sayıdır.

Tümevarım

Yaygın bir matematiksel kanıt türü olan tümevarım genellikle yinelgeye baş vurur.

Örneğin Osman soyundan gelenlerin insan olduğu iki temel varsayım ile ispatlanabilir.

Varsayım 1: Osman insandır.
Varsayım 2: İnsanın çocuğu insandır.

İddia: x, Osman soyundan geliyor ise insandır.

İspat:

Varsayım 1 : Temel durum: x, Osman ise insandır

Varsayım 2 : Tümevarım adımı: {\displaystyle x}’in ebeveyni Osman ise temel durum ve Varsayım 2’ye göre kendisi de insandır.
x, Osman soyundan geliyor fakat {\displaystyle x}’in ebeveyni Osman değilse, {\displaystyle x}’in ebeveyni Osman soyundan geliyordur ve İddiaya göre ebeveyni insandır.
Bu durumda Varsayım 2’ye göre x de insandır.

Kendi kendine atıfta bulunan bu ispat biçimi, temel durum dışında ki her durum için bir önceki durumun doğru olduğunu kabul etmektedir.

Örneğin {\displaystyle Osman}’ın torunu {\displaystyle Osman}’ın çocuğu insan olduğu için insandır. {\displaystyle Osman}’ın çocuğu ise Osman insan olduğu için insandır.

Herhangi bir nesilden bu şekilde geriye gidilebilir.

Bilgisayar programlarında yinelgen yapılar

İşlev Tanımlama

Matematikte açıklanan duruma benzer biçimde, işlevlerin yinelgen olarak tanımı yapılabilir.

Örneğin işlevsel bir programlama dili olan Common Lisp’te faktöriyel işlevi aşağıdaki gibi tanımlanabilir:

(defun fak(n)
  (if (<= n 1) 1
    (* n (fak (- n 1)))))

Ya da daha yaygın olarak kullanılan C dilinde;
int fak(int n)
{
 if (n<=1) return 1;
 return n*fak(n-1); 
}

Church tezine göre hesaplanabilir bütün işlevler, yinelgen işlevler ile ifade edilebilir.

Veri Türleri

Bazı programlama dilleri, yinelgen veri türlerine izin verir. Aşağıdaki betik parçası, Ocaml’de doğal sayı veri tipini tanımlamaktadır:

type dogal = SIFIR | SONRAKI of dogal

Kaynak : 

Wikipedia

By Kaynuka

Bu habere de bakabilirisiniz

David Hilbert Kimdir?

David Hilbert, 23 Ocak 1862 Königsberg, Almanya’da dünyaya gelmiş bir matematikçiydi. 19. ve 20. yüzyılın ...

David Hilbert’in Sonsuzluk Oteli

Sonsuzluk nedir? Bu sorunun cevabını vermek gerçekten de zor. Öyle ki hangi sayıyı ya da ...

Hilbert Problemleri

Hilbert problemleri, Alman matematikçi David Hilbert tarafından 1900 yılında yayınlanan 23 problemden meydana gelmektedir. Problemlerin ...

malatya bayan escort bursa bayan escort antalya bayan escort konya bayan escort
antalya escortantalya escortantalya escortbursa escortbursa escortkonya escortkonya escorteskişehir escorturfa escortanakkale escortsamsun escortafyon escortmanisa escortmersin escortdenizli escortkıbrıs escortbalıkesir escortaydın escorthatay escortsivas escortvan escortadana escortelazığ escortizmit escortyalova escorterzurum escortısparta escortkocaeli escortmuğla escortsakarya escorttekirdağ escortdiyarbakır escorttrabzon escortuşak escortsinop escortrize escortmardin escortnevşehir escortorum escortbatman escortkırşehir escortaksaray escortamasya escortniğde escortağrı escortbolu escortadıyaman escortyozgat escortzonguldak escortktahya escorttokat escortgiresun escortkahramanmaraş escortkarabk escortbilecik escortkayseri escortdzce escortistanbul escortistanbul escortistanbul escortbursa escortkonya escortkonya escortkayseri escortkayseri escortmalatya escortmalatya escortmalatya escortmalatya escortmalatya escortgaziantep escortgaziantep escortgaziantep escorthatay escorthatay escortankara escortankara escortkırıkkale escortbartın escortartvin escortbingol escortbitlis escortankırı escortedirne escortkastamonu escortgmşhane escortkaraman escorthakkari escortmuş escortordu escortsiirt escorttunceli escortbayburt escortşırnak escortardahan escortığdır escortkilis escortosmaniye escortdzce escorterzincan escortkars escortburdur escortistanbul escortizmir escortankara escortbodrum escortgaziantep escorteskişehir escortkonya escorturfa escortafyon escortdenizli escortizmir escortbursa escortsamsun escortanakkale escorthatay escortizmit escortkayseri escortantalya escortvan escortzonguldak escortbalıkesir escortmanisa escortbodrum escortkıbrıs escortsivas escortgaziantep escortadana escortadıyaman escortafyon escortağrı escortaksaray escortamasya escortantalya escortankara escortardahan escortartvin escortaydın escortbalıkesir escortbartın escortbatman escortbayburt escortbilecik escortbingl escortbitlis escortbolu escortburdur escortbursa escortanakkale escortankırı escortorum escortdenizli escortdiyarbakır escortdzce escortedirne escortelazığ escorterzincan escorterzurum escorteskişehir escortgaziantep escortgiresun escortgmşhane escorthakkari escorthatay escortığdır escortısparta escortistanbul escortizmir escortizmit escortmaraş escortkarabk escortkaraman escortkars escortkastamonu escortkayseri escortkıbrıs escortkilis escortkırıkkale escortkırklareli escortkırşehir escortkocaeli escortkonya escortktahya escortmalatya escortmanisa escortmardin escortmersin escortmuğla escortmuş escortnevşehir escortniğde escortordu escortosmaniye escortrize escortsakarya escortsamsun escorturfa escortsinop escortsivas escorttekirdağ escorttokat escorttrabzon escortuşak escortvan escortyalova escortyozgat escortzonguldak escorthttp://www.escortlariyiz.com