php查找方法类:顺序查找与二分查找的例子

发布时间:2020-09-26编辑:脚本学堂
php查找算法的一个例子,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 '二分查找失败!';
}
}