Home >php教程 >php手册 >php顺序查找和二分查找示例

php顺序查找和二分查找示例

WBOY
WBOYOriginal
2016-06-06 20:23:411839browse

这篇文章主要介绍了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   {
   $mid = ceil(($min + $max) / 2);

   if($val == $this->array[$mid])
   {
    echo '二分查找成功!';
    exit(0);
   }
   else if($val array[$mid])
   {
    $max = $mid;
   }
   else if($val > $this->array[$mid])
   {
    $min = $mid;
   }
  }

  echo '二分查找失败!';
 }
}

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn