PHP基于关联数组20行代码搞定约瑟夫问题示例


Posted in PHP onNovember 07, 2017

本文实例讲述了PHP基于关联数组20行代码搞定约瑟夫问题。分享给大家供大家参考,具体如下:

记得前段时间一写做java开发的兄弟对我说他java60行做了个约瑟夫问题,挺不错的。调侃php应该写这个挺不行的。

于是 呵呵。。。 洋洋洒洒 20行,写完自己都有些不相信了。哈哈 让不了解php的见识哈php的快捷轻便之处。

ps:其实个人挺反感用代码行数来衡量代码数量的,感觉常把代码行数挂嘴边的大多无奈装2。此文仅属闲余娱乐。

回顾一下约瑟夫问题:N个人围成一圈,从第一个开始报数,第M个将被杀掉,最后剩下一个,其余人都将被杀掉。例如N=6,M=5,被杀掉的顺序是:5,4,6,2,3,1。

实现代码如下:

<?php
$n=7;
echo "well,let us test $n<br/>";
for($i=1;$i<$n;$i++){
$a["$i"]=$i+1;
$flag[$i]="in";
}
$a["$n"]=1;
foreach($a as $key=>$value){
echo $key."=>".$value."</br>";
}
$key=1;$out=0;$r=0;
while($out<$n){
$r++;
if($r==2){
echo"$a[$key]<br/>";// out
$a[$key]=$a[$a[$key]];
$out++;$r=0;
}
$key=$a[$key];
}

运行结果:

PHP基于关联数组20行代码搞定约瑟夫问题示例

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

PHP 相关文章推荐
两种php调用Java对象的方法
Oct 09 PHP
DedeCms模板安装/制作概述
Mar 11 PHP
PHP 程序授权验证开发思路
Jul 09 PHP
php 计划任务 检测用户连接状态
Mar 29 PHP
浅析PHP安装扩展mcrypt以及相关依赖项(PHP安装PECL扩展的方法)
Jul 05 PHP
php下拉选项的批量操作的实现代码
Oct 14 PHP
PHP自定义函数获取URL中一级域名的方法
Aug 23 PHP
PHP结合Ueditor并修改图片上传路径
Oct 16 PHP
php使用Jpgraph创建3D饼形图效果示例
Feb 15 PHP
PHP实现上传多图即时显示与即时删除的方法
May 09 PHP
浅析PHP中json_encode与json_decode的区别
Jul 15 PHP
PHP内存溢出优化代码详解
Feb 26 PHP
PHP基于回溯算法解决n皇后问题的方法示例
Nov 07 #PHP
php实现的三个常用加密解密功能函数示例
Nov 06 #PHP
php实现的中秋博饼游戏之掷骰子并输出结果功能详解
Nov 06 #PHP
php实现的中秋博饼游戏之绘制骰子图案功能示例
Nov 06 #PHP
PHP简单实现欧拉函数Euler功能示例
Nov 06 #PHP
Laravel中服务提供者和门面模式的入门介绍
Nov 06 #PHP
php实现的生成迷宫与迷宫寻址算法完整实例
Nov 06 #PHP
You might like
php+ajax实现无刷新分页的方法
2014/11/04 PHP
laravel如何开启跨域功能示例详解
2017/08/31 PHP
javascript实现仿银行密码输入框效果的代码
2007/12/13 Javascript
js 代码集(学习js的朋友可以看下)
2009/07/22 Javascript
jquery 操作单选框,复选框,下拉列表实现代码
2009/10/27 Javascript
用JS控制回车事件的代码
2011/02/20 Javascript
js select option对象小结
2013/12/20 Javascript
js脚本实现数据去重
2014/11/27 Javascript
基于jquery插件实现拖拽删除图片功能
2020/08/27 Javascript
深入理解ECMAScript的几个关键语句
2016/06/01 Javascript
Bootstrap DateTime Picker日历控件简单应用
2017/03/25 Javascript
一个简易的js图片轮播效果
2017/07/22 Javascript
详解nuxt路由鉴权(express模板)
2018/11/21 Javascript
深入理解使用Vue实现Context-Menu的思考与总结
2019/03/09 Javascript
基于mpvue搭建微信小程序项目框架的教程详解
2019/04/10 Javascript
解决Vue打包后访问图片/图标不显示的问题
2019/07/25 Javascript
JS原形与原型链深入详解
2020/05/09 Javascript
[01:33:30]DOTA2-DPC中国联赛 正赛 RNG vs Phoenix BO3 第二场 2月5日
2021/03/11 DOTA
python查找第k小元素代码分享
2013/12/18 Python
python实现清屏的方法
2015/04/30 Python
Python实现Linux的find命令实例分享
2017/06/04 Python
python绘制双柱形图代码实例
2017/12/14 Python
用Python写王者荣耀刷金币脚本
2017/12/21 Python
Pycharm如何运行.py文件的方法步骤
2020/03/03 Python
python 元组和列表的区别
2020/12/30 Python
Python实现疫情地图可视化
2021/02/05 Python
详解HTML5 录音的踩坑之旅
2017/12/26 HTML / CSS
介绍Java的内部类
2012/10/27 面试题
保密工作责任书
2014/04/16 职场文书
企业文化标语口号
2014/06/09 职场文书
教室布置标语
2014/06/26 职场文书
党员作风建设整改方案
2014/10/27 职场文书
合作意向协议书
2015/01/29 职场文书
工程项目合作意向书
2015/05/08 职场文书
Python实现文本文件拆分写入到多个文本文件的方法
2021/04/18 Python
Python实现Matplotlib,Seaborn动态数据图
2022/05/06 Python