存档

文章标签 ‘查找’

二分查找

2018年6月29日 评论已被关闭

二分查找也叫折半查找

[pcsh lang=”php” tab_size=”4″ message=”” hl_lines=”” provider=”manual”]

$a = [0,1,2,3,4,5,6];

function half($arr, $value){
	$low = 0;
	$high = count($arr)-1; //9

	if($value>$arr[$high] || $value<$arr[$low])
		return false;

	while($low <= $high){
		$mid = floor(($low+$high)/2);	//4
		if($value > $arr[$mid]){
			$low = $mid + 1;
		}
		elseif($value < $arr[$mid]){
			$high = $mid - 1;
		}
		else{
			return $mid;
		}

	}

	return -1;

	}

	$x = half($a, 2);
	var_dump($x);

[/pcsh]

分类: PHP 标签: