程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> PHP綜合 >> php順序查找和二分查找示例

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 '二分查找失敗!';
 }
}

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved