php顺序查找和二分查找示例
前端之家收集整理的这篇文章主要介绍了
php顺序查找和二分查找示例,
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
@H_403_0@<div class="codetitle"><a style="CURSOR: pointer" data="23835" class="copybut" id="copybut23835" onclick="doCopy('code23835')"> 代码如下:
<div class="codebody" id="code23835">
<?
PHP
@H_
403_0@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 '二分查找失败!';
}
}