php 數(shù)組二分法查找函數(shù)代碼
更新時間:2010年02月16日 13:52:05 作者:
search函數(shù) 其中$array為數(shù)組,$k為要找的值,$low為查找范圍的最小鍵值,$high為查找范圍的最大鍵值
復(fù)制代碼 代碼如下:
<?php
//search函數(shù) 其中$array為數(shù)組,$k為要找的值,$low為查找范圍的最小鍵值,$high為查找范圍的最大鍵值
function search($array, $k, $low=0, $high=0)
{
if(count($array)!=0 and $high == 0) //判斷是否為第一次調(diào)用
{
$high = count($array);
}
if($low <= $high) //如果還存在剩余的數(shù)組元素
{
$mid = intval(($low+$high)/2); //取$low和$high的中間值
if ($array[$mid] == $k) //如果找到則返回
{
return $mid;
}
elseif ($k < $array[$mid]) //如果沒有找到,則繼續(xù)查找
{
return search($array, $k, $low, $mid-1);
}
else
{
return search($array, $k, $mid+1, $high);
}
}
return -1;
}
$array = array(4,5,7,8,9,10); //測試search函數(shù)
echo search($array, 8); //調(diào)用search函數(shù)并輸出查找結(jié)果
?>
您可能感興趣的文章:
- 使用PHP實現(xiàn)二分查找算法代碼分享
- PHP 冒泡排序 二分查找 順序查找 二維數(shù)組排序算法函數(shù)的詳解
- php二分法在IP地址查詢中的應(yīng)用
- php二分查找二種實現(xiàn)示例
- 深入理解PHP幾個算法:PHP冒泡、PHP二分法、PHP求素數(shù)、PHP乘法表
- PHP字符串逆序排列實現(xiàn)方法小結(jié)【strrev函數(shù),二分法,循環(huán)法,遞歸法】
- php順序查找和二分查找示例
- php數(shù)據(jù)結(jié)構(gòu)與算法(PHP描述) 查找與二分法查找
- php中二分法查找算法實例分析
- 數(shù)據(jù)結(jié)構(gòu)之利用PHP實現(xiàn)二分搜索樹
相關(guān)文章
LINUX下PHP程序?qū)崿F(xiàn)WORD文件轉(zhuǎn)化為PDF文件的方法
這篇文章主要介紹了LINUX下PHP程序?qū)崿F(xiàn)WORD文件轉(zhuǎn)化為PDF文件的方法,涉及php針對Word文檔與pdf格式文件的相關(guān)操作技巧,需要的朋友可以參考下2016-05-05
php-perl哈希算法實現(xiàn)(times33哈希算法)
php-perl哈希實現(xiàn)算法–DJBX33A(Daniel J. Bernstein, Times 33 with Addition)APR哈希默認(rèn)算法2013-12-12
解決PhpMyAdmin中導(dǎo)入2M以上大文件限制的方法分享
當(dāng)用phpMyAdmin導(dǎo)入的資料庫大小大于2M的時候,會出現(xiàn)如下提示: No data was received to import. Either no file name was submitted、or the file size exceeded the maximum size permitted by your PHP configuration. See FAQ 1.16.2014-06-06
php中instanceof 與 is_a()區(qū)別分析
總的來說php中instanceof 與 is_a()功能是一樣的,不同的是由于PHP的版本不同,部分PHP版本舍棄了is_a() 下面我們來具體分析下吧。2015-03-03
php使用ftp遠(yuǎn)程上傳文件類(完美解決主從文件同步問題的方法)
下面小編就為大家?guī)硪黄猵hp使用ftp遠(yuǎn)程上傳文件類(完美解決主從文件同步問題的方法)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2016-09-09

