digui($i-1);            for($j=1;$j"/> digui($i-1);            for($j=1;$j">

Heim  >  Artikel  >  Backend-Entwicklung  >  Beispielanalyse einer rekursiven PHP-Funktion

Beispielanalyse einer rekursiven PHP-Funktion

小云云
小云云Original
2018-03-06 11:38:521789Durchsuche

Dieser Artikel

   public function digui($i)
    {

        if($i=='1'){
            echo  "*" ;
            echo "<br>";
            return ;
        }else{
            $this->digui($i-1);
            for($j=1;$j<=$i;$j++){
                echo  "*" ;
            }
            echo "<br>";
        }
    }
 调用 $this->digui(3);
结果
*
**
***

  function digui2($n){
        echo $n." ";
        if($n>0){
            $this-> digui2($n-1);
        }else{
            echo "<-->";
        }
        echo $n." ";
    }

ruft $this->digui2(3);

Ergebnis

3 2 1 0 <--> auf ; 0 1 3 Um die Operation zu zerlegen, denken wir:

Beim Ausführen der Funktion one(3) muss, genau wie bei der Funktion test(), zuerst 3 ausgegeben werden, und dann wird die Funktion two(2) aufgerufen 🎜>Beachten Sie, dass das Folgende zu diesem Zeitpunkt noch nicht ausgegeben wurde.

Fahren Sie fort, führen Sie die Funktion zwei(2) aus, geben Sie 2 aus und rufen Sie die Funktion drei(1) auf. Ebenso ist keine Zeit für die Ausgabe Folgendes 2.

Führen Sie three(1) aus, geben Sie 1 direkt aus und rufen Sie keine anderen Funktionen mehr auf.

Zu diesem Zeitpunkt fragen wir uns, ob die Funktion two() noch nicht ausgeführt wurde. Okay, dann führen Sie sie aus Der unvollendete Teil der Funktion two () wird wie folgt ausgegeben: 2. Beginnen Sie dann mit der Ausführung des unvollendeten Teils der Funktion one (), dh geben Sie Folgendes aus: 3. Zu diesem Zeitpunkt , alle Funktionen wurden ausgeführt.
Dann ist das Ausgabeergebnis:

3 2 1 2 3
<?php
function one($num){
echo $num;
two($num-1);
echo $num;
}
function two($num){
echo $num;
three($num-1);
echo $num;
}
function three($num){
echo $num;
}
one(3);
?>


Verwandte Empfehlungen:


Detaillierte Erklärung der rekursiven PHP-Funktion



Erklärung zum Aufruf rekursiver PHP-Funktionen

Analyse von drei Möglichkeiten zur Implementierung rekursiver PHP-Funktionen

Das obige ist der detaillierte Inhalt vonBeispielanalyse einer rekursiven PHP-Funktion. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn