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

广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!