二分查找

房东的猫 提交于 2019-12-24 00:44:55
$nums = [1, 2, 3, 4, 5, 6];
	$num=5;
	$start = 0;
	$end = count($nums)-1;
	echo binary_search($nums,$num,$start,$end);
	function binary_search($nums,$num,$start,$end){
		$mid = floor(($start+$end)/2);
		$midNum = $nums[$mid];
		if($num < $midNum){
			$end = $mid-1;
			return binary_search($nums,$num,$start,$end);
		}elseif($num > $midNum){
			$start = $mid+1;
			return binary_search($nums,$num,$start,$end);
		}elseif($midNum == $num){
		   return $mid;
		}
	}

  

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!