首頁  >  文章  >  後端開發  >  PHP遞歸演算法的應用(含範例)

PHP遞歸演算法的應用(含範例)

烟雨青岚
烟雨青岚轉載
2020-06-08 16:58:232377瀏覽

PHP遞歸演算法的應用(含範例)

PHP遞歸演算法的應用

#遞歸函數為自呼叫函數,在函數體內直接或直接自個調用自個,但需求設定自調用的條件,若滿意條件,則調用函數自身,若不滿意則停止本函數的自調用,然後把目前流程的主控權交回給上一層函數來履行,也許這麼給我們解說,仍是很難理解,例如:

範例:

function test ($n){
    echo $n."  ";
    if($n>0){
        test($n-1);
    }else{
        echo "";
    }
    echo $n."  ";
}
test(2)
这个比如终究的输出结果是2 1 0<–>0 1 2

解說下為何輸出是這樣的

①  履行test(2),echo 2,然後由於2>0,履行test(1), 後邊還有來不及履行的echo 2

#②  履行test(1),echo 1,然後由於1>0,履行test(0),相同後邊還有沒來得及履行的echo 1

#③  履行test(0),echo 0,履行test(0),echo 0, 此刻0>0的條件不滿意,不在履行test()函數,而是echo “”,並且履行後邊的echo 0,此刻函數現已不再呼叫自個,開端將流程的主控權交回給上一層函數來履行,也即是開端履行剛剛一切test()函數來不及輸出的最終一個echo,0的一層是1也即是輸出1 1的上一層是2 也即是輸出2 2沒有山一層所以呢輸出的內容即是2 1 05fb6f3beb31540706eb26a1cd1069f9d0 1 2

感謝大家耐心的閱讀,希望大家有所收益。

推薦教學:《PHP教學

以上是PHP遞歸演算法的應用(含範例)的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:csdn.net。如有侵權,請聯絡admin@php.cn刪除