当前位置 : 主页 > 网络编程 > PHP >

约瑟夫问题解决

来源:互联网 收集:自由互联 发布时间:2021-06-28
约瑟夫问题解决 共有$n个数组元素,每次删除第$m个元素function joseph_ring($n,$m){ $arr = range(1,$n); $i = 0; while(count($arr)1){ $i=$i+1; $head = array_shift($arr); if($i%$m != 0){ //如果不是则重新压入数组
约瑟夫问题解决
共有$n个数组元素,每次删除第$m个元素

function joseph_ring($n,$m){
  $arr = range(1,$n);
  $i = 0;
  while(count($arr)>1){
    $i=$i+1;
    $head = array_shift($arr);
    if($i%$m != 0){ //如果不是则重新压入数组
      array_push($arr,$head);
    }
  }
  return $arr[0];
}
网友评论