Sobes.tech
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.