Junior
Yinelenen davranış nedir?
sobes.tech yapay zeka
AI'dan gelen yanıt
Kendi kendine çağrı yapan kod veya fonksiyonların yürütülmesi.
Ana unsurlar:
- Temel durum: Rekursiyonun durduğu koşul. Bu olmadan, sonsuz rekursiyon gerçekleşir.
- Rekursif durum: Fonksiyonun kendisini çağırdığı kısım, genellikle değiştirilmiş bir argümanla.
Örnek (faktöriyel hesaplama):
func factorial(_ n: Int) -> Int {
// Temel durum
if n <= 1 {
return 1
}
// Rekursif durum
return n * factorial(n - 1)
}
// Çağrı örneği
let result = factorial(5) // 120
Avantajlar:
- Kendine benzer yapıya sahip problemler için şık çözüm (örneğin, ağaçların dolaşılması).
- Bazı durumlarda daha okunabilir kod.
Dezavantajlar:
- Çok fazla bellek kullanabilir (çağrı yığını).
- Çok derin rekursiyonlarda yığın taşması riski.
- Bazen yineleyici çözümlerden daha az verimli olabilir.