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.