猴王演算法
<?php
function getkingmokey($n, $m)
$len = count($monkey);
//迴圈遍歷陣列元素(猴子編號)
for($i= 0; $i< $len; $i= $i)
//若只剩乙隻猴子 則輸出該猴子編號(陣列元素值) 並退出迴圈
if($num == 1)
//將第$i只猴子踢出隊伍(相應陣列位置元素值設為0)
$monkey[$i] = 0;
//列印該猴子位置
echo $i."";
//設定計數器
for($j= 1; $j<= $m; $j++)
}//若編號大於猴子個數,則從第0只猴子開始遍歷(陣列指標歸零)
步驟同上
if($i == $len) $i = 0;
//同上步驟,獲取下乙隻猴子編號
if($monkey[$i] == 0)
} } }
}//猴子個數
$n = 10;
//踢出隊伍的編號間隔值
$m = 3;
//呼叫猴王獲取函式
getkingmokey($n, $m);
?>
用遞迴的演算法
$monkeys = array(1 , 2 , 3 , 4 , 5 , 6 , 7, 8 , 9 , 10); //monkey的編號
$m = 4; //數到第幾隻的那只猴子被踢出去
function killmonkey($monkeys , $m , $current = 0)
else
echo $monkeys[$current]."的猴子被踢掉了
"; array_splice($monkeys , $current , 1);
killmonkey($monkeys , $m , $current); }}
killmonkey($monkeys , $m);
php面試題猴王
猴王這個題目也是比較多的。functionkillmonkey array monkeys m current 0 else echo monkeys current out 找到了要踢走的猴子 array splice monkeys current 1 從陣列中刪除這個猴子 killmonkey...
PHP實現的猴王演算法 猴子選大王 示例
len count monkey 迴圈遍歷陣列元素 猴子編號 for i 0 i len i i 若只剩乙隻猴子 則輸出該猴子編號 陣列元素值 並退出迴圈 if num 1 將第 i只猴子踢出隊伍 相應陣列位置元素值設為0 monkey i 0 列印該猴子位置 echo i.設定計數器 www.cp...
猴王演算法精簡版 Python實現
乙個猴王演算法,網上所列太過繁瑣,問題很簡單描述如下,猴王演算法 一群猴子圍成一圈,從某乙隻開始數,數到m只剔除之,後面的接著從一開始數,數到m剔除之,依次類推,剩下的最後乙隻為猴王 因為剛學習了python,所以用她來編碼,很優秀的程式語言哦 usr bin python coding utf 8...