Maison > Java > javaDidacticiel > le corps du texte

Récursion

WBOY
Libérer: 2024-08-31 13:02:32
original
648 Les gens l'ont consulté

Récursion

Définition de la récursivité :

  • La récursivité est une méthode qui s'appelle toute seule.
  • Une méthode est récursive lorsqu'elle contient un appel à elle-même.

Exemple classique :
Le calcul factoriel est un exemple classique de récursion.
La factorielle d'un nombre ? est le produit de tous les entiers de 1 à N

Exemple de code :

  • Le code fourni montre une méthode récursive (factR) et une méthode itérative (factI) pour calculer la factorielle.
  • Les deux méthodes renvoient les mêmes résultats, mais avec des approches différentes.

Fonctionnement de la méthode récursive :

  • La méthode récursive (factR) s'appelle jusqu'à la valeur de
  • ? n soit 1.
  • À chaque appel récursif, la méthode "s'empile" et ne commence à revenir que lorsque la condition de base est remplie.

Pile d'appels :

  • Chaque appel récursif alloue de l'espace sur la pile d'exécution pour les nouveaux paramètres et variables.
  • Les appels récursifs peuvent provoquer un dépassement de pile, entraînant des exceptions.

Comparaison avec l'itération :

  • Les méthodes récursives peuvent être plus claires et plus simples pour certains algorithmes, comme le tri rapide.
  • Cependant, les versions récursives peuvent être plus lentes en raison de la surcharge des appels de méthode.

Attention lors de l'utilisation de la récursivité :

  • Il est crucial d'avoir une condition de terminaison pour éviter que la méthode n'entre dans une boucle infinie.
  • Les instructions de débogage telles que println() peuvent vous aider à comprendre le flux d'exécution récursive.

Code récursif pour calculer la factorielle
VOIR RECURSION.JAVA

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:dev.to
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!