1. 程式人生 > >PHP開發之遞歸算法的三種實現方法

PHP開發之遞歸算法的三種實現方法

簡單的 靈活運用 要掌握 發布 容易 lob 實現原理 出現 無限分類

遞歸算法對於任何一個編程人員來說,應該都不陌生。因為遞歸這個概念,無論是在PHP語言還是Java等其他編程語言中,都是大多數算法的靈魂。對於PHP新手來說,遞歸算法的實現原理可能不容易理解。但是只要你了解掌握了這個算法原理,就可以靈活運用遞歸算法實現編程中的多種功能比如實現無限分類等。遞歸也是入門者最需要掌握的一個基礎算法技巧。下面就通過具體代碼示例為大家介紹PHP遞歸算法也是PHP遞歸排序的三種實現方法。

方法一:靜態變量

<?php
function call(){
static $i=1;
echo $i.‘<br>‘;
$i++;
if ($i<=10){
call();
}

}
call();

這種方法我們主要利用static定義靜態變量來實現遞歸排序。如上我們定義了一個call方法和靜態變量$i,如果我們不給$i變量添加判斷,而是直接運行,顯然就會出現死循環。

方法二:全局變量

$i=1;
function call(){
global $i;
echo $i;
$i++;
if($i<=10){
call();
}
}
call();

此種方法主要利用global定義全局變量來實現PHP遞歸排序。如上我們先定義了一個$i變量,再創建一個call方法。

方法三:引用傳參

function call(&$i=1){
echo $i.‘<br>‘;
$i++;
if($i<=10){

call($i);
}
}
call();

  大家在使用這個方法時,可以簡單了解下PHP中引用傳遞的概念:可以將一個變量通過引用傳遞給函數,這樣該函數就可以修改其參數的值,利用引用傳參來實現PHP遞歸排序是最基礎簡單的一種算法了(註:在調用自身方法時,一定要將參數傳遞進去,否則就會報錯。)。

  本文由專業的鄭州app開發公司燚軒科技整理發布,原創不易,如需轉載請註明出處!

PHP開發之遞歸算法的三種實現方法