Junior — Middle
Vysvetlite, čo znamená používanie rekurzívnych funkcií v programovaní a ako fungujú.
sobes.tech AI
Odpoveď od AI
Rekurzívna funkcia je funkcia, ktorá volá sama seba na riešenie úlohy. V programovaní sa rekurzia používa na rozdelenie zložitej úlohy na jednoduchšie podúlohy rovnakého typu.
Princíp fungovania:
- Funkcia volá sama seba s upraveným argumentom, čím približuje riešenie k základnému prípadu.
- Základný prípad je podmienka, pri ktorej rekurzia končí, aby sa predišlo nekonečným volaniam.
Príklad v Go — výpočet faktoriálu čísla:
package main
import "fmt"
func factorial(n int) int {
if n == 0 {
return 1 // základný prípad
}
return n * factorial(n-1) // rekurzívne volanie
}
func main() {
fmt.Println(factorial(5)) // 120
}
Rekurzia je užitočná pri práci s stromami, grafmi, delením úloh, ale vyžaduje opatrnosť, aby nedošlo k pretečeniu zásobníka.