Explication
1 Généralement, les algorithmes qui peuvent être traités par des appels récursifs nécessitent également un traitement inefficace supplémentaire via des boucles.
2. Après optimisation, le compilateur actuel aura une très bonne optimisation de l'efficacité pour le traitement de plusieurs appels de méthodes, et l'efficacité ne pourra pas être inférieure à celle des boucles.
Loop
Avantages : Structure simple
Inconvénients : Cela ne résout pas tous les problèmes. Certains problèmes conviennent à l'utilisation de la récursion au lieu des boucles. S'il n'est pas difficile d'utiliser des boucles, il est préférable d'utiliser des boucles.
Récursion
Avantages : Le code est concis, clair et facile à vérifier.
Inconvénients : Son fonctionnement Un plus grand nombre d'appels de méthode sont nécessaires. Si le niveau d'appel est relativement profond, un traitement de pile supplémentaire doit être ajouté, par exemple, le transfert de paramètres nécessite un push de pile, ce qui aura un certain impact sur l'efficacité d'exécution. Cependant, pour certains problèmes, si vous n'utilisez pas la récursivité, le code sera extrêmement laid.
Java est un langage de programmation orienté objet qui peut écrire des applications de bureau, des applications Web, des systèmes distribués et des applications système embarquées.
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!