栏目分类:
子分类:
返回
终身学习网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
终身学习网 > IT > 软件开发 > 后端开发 > PHP

约瑟夫环问题 - PHP算法

PHP 更新时间:发布时间: 百科书网 趣学号

约瑟夫环(约瑟夫问题)是一个数学的应用问题:已知n个人(以编号1,2,3...n分别表示)围坐在一张圆桌周围。从编号为k的人开始报数,数到m的那个人出列;他的下一个人又从1开始报数,数到m的那个人又出列;依此规律重复下去,直到圆桌周围的人全部出列。通常解决这类问题时我们把编号从0~n-1,最后 结果+1即为原问题的解。


<?php


function king($n, $m)
{
// 生成数组
$monkey = range(1, $n);
$i = 0;
while (count($monkey) > 1) {
$i += 1; // 从第一个开始
// 将第一个人出环
$head = array_shift($monkey);
if ($i % $m != 0) {
// 将第一个人放到尾部
array_push($monkey, $head);
} else {
// 这个人出环了
//echo $head . '<br>';
}
}
return $monkey[0];
}
echo king(10, 7);

</div>
转载请注明:文章转载自 www.051e.com
本文地址:http://www.051e.com/it/214158.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 ©2023-2025 051e.com

ICP备案号:京ICP备12030808号