zhangwei0php 2014-03-27
代码如下:
<?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 '二分查找失败!'; } }