首页 > 未分类 > 简单易用的php顺序查找和二分查找的类
2014
04-03

简单易用的php顺序查找和二分查找的类

php顺序查找和二分查找的类


class search{
	// 查找的源数组
	private $array = array(1,2,3,5,7,6,4,8);

		/**
		* 顺序查找法
		* @param $val 要查找的值
		*/
		public function query_search($val){
			foreach ($this->array as $k => $v){
				if($v == $val){
					echo '顺序查找成功!';
					exit(0);
				}
			}

		echo '顺序查找失败!';
		}

	/**
	* 二分查找法
	* @param $val 要查找的值
	*/
	public function bin_search($val){
		sort($this->array);

		$min = 0;
		$max = count($this->array);

		for ($i = $min; $i < $max; $i++){
			$mid = ceil(($min + $max) / 2);
			if($val == $this->array[$mid]){
				echo '二分查找成功!';
				exit(0);
			}else if($val < $this->array[$mid]){
				$max = $mid;
			}else if($val > $this->array[$mid]){
				$min = $mid;
			}
		}
		echo '二分查找失败!';
	}
}



友荐云推荐