php约瑟夫问题解决关于处死犯人的算法


Posted in PHP onMarch 23, 2015

本文实例讲述了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 相关文章推荐
一个简洁的多级别论坛
Oct 09 PHP
PHP面向对象的使用教程 简单数据库连接
Nov 25 PHP
通达OA公共代码 php常用检测函数
Dec 14 PHP
简单的php文件上传(实例)
Oct 27 PHP
浅析PHP微信支付通知的处理方式
May 25 PHP
PHP的魔术常量__METHOD__简介
Jul 08 PHP
php简单计算页面加载时间的方法
Jun 19 PHP
twig模板获取全局变量的方法
Feb 05 PHP
PHP Echo字符串的连接格式
Mar 07 PHP
浅谈mysql_query()函数的返回值问题
Sep 05 PHP
PHP生成图片验证码功能示例
Jan 12 PHP
Yii2设置默认控制器的两种方法
May 19 PHP
PHP贪婪算法解决0-1背包问题实例分析
Mar 23 #PHP
PHP回溯法解决0-1背包问题实例分析
Mar 23 #PHP
PHP动态规划解决0-1背包问题实例分析
Mar 23 #PHP
php找出指定范围内回文数且平方根也是回文数的方法
Mar 23 #PHP
PHP判断一个字符串是否是回文字符串的方法
Mar 23 #PHP
PHP输出两个数字中间有多少个回文数的方法
Mar 23 #PHP
php使用正则表达式进行字符串搜索的方法
Mar 23 #PHP
You might like
建立文件交换功能的脚本(二)
2006/10/09 PHP
PHP中Date获取时间不正确怎么办
2008/06/05 PHP
php XMLWriter类的简单示例代码(RSS输出)
2011/09/30 PHP
使用Firebug对js进行断点调试的图文方法
2011/04/02 Javascript
推荐20家国外的脚本下载网站
2011/04/28 Javascript
jquery 新建的元素事件绑定问题解决方案
2014/06/12 Javascript
JavaScript中的闭包(Closure)详细介绍
2014/12/30 Javascript
原生js实现模拟滚动条
2015/06/15 Javascript
AngularJS自定义插件实现网站用户引导功能示例
2016/11/07 Javascript
bootstrap滚动监控器使用方法解析
2017/01/13 Javascript
JS原生数据双向绑定实现代码
2017/08/14 Javascript
从源码看angular/material2 中 dialog模块的实现方法
2017/10/18 Javascript
node puppeteer(headless chrome)实现网站登录
2018/05/09 Javascript
解决bootstrap-select 动态加载数据不显示的问题
2018/08/10 Javascript
fetch 如何实现请求数据
2018/12/20 Javascript
layui 弹出层值回传解决方式
2019/11/14 Javascript
通过实例解析jQ Ajax操作相关原理
2020/09/23 Javascript
Python入门及进阶笔记 Python 内置函数小结
2014/08/09 Python
如何在python字符串中输入纯粹的{}
2018/08/22 Python
python的set处理二维数组转一维数组的方法示例
2019/05/31 Python
python tkinter组件使用详解
2019/09/16 Python
django-crontab实现服务端的定时任务的示例代码
2020/02/17 Python
Python爬虫入门教程02之笔趣阁小说爬取
2021/01/24 Python
Python tkinter实现日期选择器
2021/02/22 Python
黄色火烈鸟:De Gele Flamingo
2019/03/18 全球购物
关于美容院的活动方案
2014/08/14 职场文书
校长创先争优承诺书
2014/08/30 职场文书
运动会广播稿200米(5篇)
2014/10/15 职场文书
开展批评与自我批评心得体会
2014/10/17 职场文书
街道务虚会发言材料
2014/10/20 职场文书
2014年药房工作总结
2014/11/22 职场文书
小学生心理健康活动总结
2015/05/08 职场文书
创新创业项目计划书该怎样写?
2019/08/13 职场文书
导游词之台湾安平古堡
2019/12/25 职场文书
python3实现无权最短路径的方法
2021/05/12 Python
利用Python判断整数是否是回文数的3种方法总结
2021/07/07 Python