Maison >développement back-end >tutoriel php >Algorithme récursif PHP simplifié

Algorithme récursif PHP simplifié

韦小宝
韦小宝original
2018-01-30 10:33:521507parcourir

La fonction récursive est une fonction auto-appelante. Elle s'appelle directement ou directement dans le corps de la fonction, mais les conditions d'auto-appel doivent être définies. Si les conditions sont remplies, la fonction. elle-même sera appelée. Sinon, elle s'arrêtera. L'auto-appel de cette fonction renvoie alors le contrôle du processus en cours à la fonction de couche supérieure pour exécution. C'est peut-être encore difficile à comprendre si cela nous est expliqué dans. Par ici.

Par exemple, le code :

function test ($n){
    echo $n."  ";
    if($n>0){
        test($n-1);
    }else{
        echo "";
    }
    echo $n."  "
}
test(2)

Le résultat final de cet exemple est 2 1 05fb6f3beb31540706eb26a1cd1069f9d0 1 2

Je vais vous expliquer Pourquoi le résultat est-il comme ça ?

La première étape consiste à exécuter test(2), echo 2, puis parce que 2>0, exécutez test(1), et ensuite il y a echo 2. qui n'a pas eu le temps de s'exécuter
La deuxième étape est d'exécuter le test (1), echo 1, et puis parce que 1>0, exécuter le test (0) De même, il y a l'écho 1 qui n'a pas eu le temps de s'exécuter.
La troisième étape consiste à exécuter test (0), echo 0, Execute test(0), echo 0, maintenant la condition 0>0 n'est pas satisfaite, la fonction test() n'est plus exécutée, mais echo " ", et l'écho suivant 0

n'est plus appelé. Ensuite, nous commençons à rendre le contrôle du processus à la fonction de la couche supérieure pour l'exécution, c'est-à-dire que nous commençons à exécuter le dernier écho qui n'a pas eu le temps d'être généré par toutes les fonctions test(). Le niveau 0 est 1, ce qui signifie que 1 est sorti. La couche supérieure de 1 est 2, ce qui signifie que la sortie est 2. 2 n'a pas de couche montagne. donc le contenu de sortie est 2 1 05fb6f3beb31540706eb26a1cd1069f9d0 1 2

Lecture connexe :

algorithme récursif php

Algorithme récursif php : algorithme récursif php Arbre PHP - aucune récursion requise : /*** Créer un arbre de nœuds parentArray* Paramètre* Tableau $ar...

Algorithme récursif php Algorithmes courants pour les entretiens PHP

Algorithme récursif php :algorithme récursif php Algorithmes couramment utilisés pour les entretiens PHP...

Discussion sur le php algorithme récursif basé sur les enveloppes rouges PHP WeChat

algorithme récursif php : algorithme récursif php basé sur les enveloppes rouges PHP WeChat Discussion sur l'algorithme : Sur un coup de tête, j'ai envoyé une enveloppe rouge au groupe d'anciens élèves WeChat que j'ai créé. le montant total de l'enveloppe rouge à 10 yuans, et a aidé 28 personnes à la recevoir au hasard. ......

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!

Déclaration:
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