91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何在PHP中利用遞歸實現一個約瑟夫環算法

發布時間:2021-01-28 11:40:23 來源:億速云 閱讀:152 作者:Leah 欄目:開發技術

這篇文章給大家介紹如何在PHP中利用遞歸實現一個約瑟夫環算法,內容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。

約瑟夫環問題: 39 個猶太人與Josephus及他的朋友躲到一個洞中,39個猶太人決定寧愿死也不要被敵人抓。于是決定了自殺方式,41個人排成一個圓圈,由第1個人開始報數,每報數到第3人該人就必須自殺。然后下一個重新報數,直到所有人都自殺身亡為止。然而Josephus 和他的朋友并不想遵從,Josephus要他的朋友先假裝遵從,他將朋友與自己安排在第16個與第31個位置,于是逃過了這場死亡游戲。

<?php
$num = 41;
$step = 3;
function joseph($arr, $step, $start, $survivors)
{
  foreach($arr as $k => $v)
  {
    if($start % $step === 0)
    {
      unset($arr[$k]);
      $start = 1;
    }
    else
    {
      $start ++;
    }
  }
  if(count($arr) > $survivors)
    return joseph($arr, $step, $start, $survivors);
  else
    return $arr;
}
$i = 0;
$arr = [];
while($i ++ < $num){
  $arr[] = $i;
}
$arr = joseph($arr, 3, 1, 2);
print_r($arr);

執行結果:

Array
(
  [15] => 16
  [30] => 31
)

關于如何在PHP中利用遞歸實現一個約瑟夫環算法就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

茌平县| 义乌市| 苏州市| 收藏| 云林县| 家居| 尼木县| 石嘴山市| 洞头县| 满洲里市| 嘉义市| 西林县| 百色市| 葫芦岛市| 天峻县| 习水县| 那坡县| 和林格尔县| 沙河市| 漳州市| 浪卡子县| 丹江口市| 呼图壁县| 社旗县| 年辖:市辖区| 修文县| 元氏县| 泗洪县| 昭通市| 深州市| 土默特左旗| 资溪县| 公主岭市| 治县。| 平原县| 潮州市| 盐源县| 重庆市| 方城县| 台安县| 秦安县|