Sobes.tech
Junior

Qu'est-ce que le comportement récursif?

sobes.tech IA

Réponse de l'IA

L'exécution de code ou de fonctions qui s'appellent elles-mêmes.

Éléments principaux:

  • Cas de base: La condition à laquelle la récursion s'arrête. Sans cela, la récursion serait infinie.
  • Cas récursif: La partie de la fonction où elle s'appelle elle-même, généralement avec un argument modifié.

Exemple (calcul de la factorielle):

func factorial(_ n: Int) -> Int {
    // Cas de base
    if n <= 1 {
        return 1
    }
    // Cas récursif
    return n * factorial(n - 1)
}
// Exemple d'appel
let result = factorial(5) // 120

Avantages:

  • Solution élégante pour les problèmes ayant une structure auto-similaire (par exemple, parcourir des arbres).
  • Code plus lisible dans certains cas.

Inconvénients:

  • Peut consommer beaucoup de mémoire (pile d'appels).
  • Risque de dépassement de pile en cas de récursion trop profonde.
  • Parfois moins performant que des solutions itératives.