function question($arr) {
global $outStr;
global $b;
foreach($arr as $key=>$val) {
if(($key+1)% $b == 0) {
unset($arr[$key]);
array_push($outStr,$val);
} else {
unset($arr[$key]);
array_push($arr,$val);
}
}
return $arr;
}
//约瑟夫问题
$a = array('a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z');//传入的数据
$b = 3;//每隔几个取数据
$outStr=array();
while (count($a)>=3) {
$a=question($a);
}
foreach($a as $key => $val) {
array_push($outStr,$val);
}
var_dump($outStr);
![](https://images2015.cnblogs.com/blog/1036792/201612/1036792-20161210214823382-2020075550.png)