1. 程式人生 > >php 實現猴子選大王遞迴演算法

php 實現猴子選大王遞迴演算法

猴子選大王是一個典型的遞迴演算法,不斷的遞迴找出最後一個元素。

<?php
$array = array('a','b','c','d','e','f');

function monkeyBigKing($arr,$num,$j=0)
{    
    if(count($arr) <= 1)
    {
        return $arr;
    }
    foreach($arr as $key => $value)
    {    
        $j++;
        if($j%$num == 0)
        {
            unset($arr[$key]);
            $j = 0;
        }
    }
    return monkeyBigKing($arr,$num,$j);
}
$a = monkeyBigKing($array,5);
var_dump($a);


以上是一個遞迴實現猴子找大王的演算法。

查詢網上的資料得知,可以不使用遞迴實現。請看我下一個博文《PHP使用非遞迴的方式實現猴子找大王演算法》