手机
当前位置:查字典教程网 >编程开发 >php教程 >php约瑟夫问题解决关于处死犯人的算法
php约瑟夫问题解决关于处死犯人的算法
摘要:本文实例讲述了php约瑟夫问题解决关于处死犯人的算法。分享给大家供大家参考。具体分析如下:古代某法官要判决IV个犯人的死刑,他有一条荒唐的法...

本文实例讲述了php约瑟夫问题解决关于处死犯人的算法。分享给大家供大家参考。具体分析如下:

古代某法官要判决IV个犯人的死刑,他有一条荒唐的法律将犯人站成一个圆圈,从第s个人开始数起,每到第D个人就拉出来处死,然后再数D个,再拉出来处决…… 直到剩下最后一个可以赦免.

function getNum($n,$m){ //用于把所有的数存到数组初始化 $a = array(); //遍历,存入数组 for($i=1;$i<=$n;$i++){ $a[$i] = $i; } //指针归0 reset($a); while(count($a)>1){ //如果数组中项大于1,继续循环剔除元素 //剔除规则 for($j=1;$j<=$m;$j++){ //如果没有达到数组的最后项 if(next($a)){ if($j==$m){ //删除m项 unset($a[array_search(prev($a),$a)]); } }else{ //如果next不存在,那么指针归0 reset($a); if($j==$m){ unset($a[array_search(end($a),$a)]); reset($a); } } } } return current($a); } echo getNum(5,3);

希望本文所述对大家的php程序设计有所帮助。

【php约瑟夫问题解决关于处死犯人的算法】相关文章:

php中header跳转使用include包含解决参数丢失问题

php递归调用删除数组空值元素的方法

php获取网页上所有链接的方法

关于PHP中的Class的几点个人看法

php简单实现快速排序的方法

php从文件夹随机读取文件的方法

php实现根据IP地址获取其所在省市的方法

php实现修改新闻时删除图片的方法

php实现统计网站在线人数的方法

PHP和JAVA的XML-RPC中文问题解决办法

精品推荐
分类导航