php解决约瑟夫环的问题

php里面解决约瑟夫环还是比较方面的,但是下面的方法太费空间

<?php 
class SelectKing{
	private $m;//幅度
	private $n;//总数
	
	public function __construct($m,$n){
		$this->m = $m;
		$this->n = $n;
	}
	
	public function getKing(){
		$mokeys = range(1, $this->n);
		$tmp = 0;
		while(count($mokeys)>1){
			$tmp++;
			$head = array_shift($mokeys);
			if($tmp%$this->m!=0){
				array_push($mokeys, $head);
			}
		}
		return $mokeys;
	}
}

class Client{
	public static function main(){
		$obj = new SelectKing(3, 10);
		$king = $obj->getKing();
		var_dump($king);
	}
}

Client::main();
?>

  

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。