本文實(shí)例講述了PHP區(qū)塊查詢實(shí)現(xiàn)方法。分享給大家供大家參考,具體如下:
分塊查詢是介于順序查詢和折半查詢之間的一種查詢方法。
其實(shí)折半查詢就是每次折半的分塊查詢,那么分塊查詢就是把數(shù)組分成區(qū)塊,然后每個(gè)區(qū)塊進(jìn)行查詢的查詢方法。
本例的數(shù)組是已經(jīng)排序號的,分塊后進(jìn)行順序查詢。
php代碼:
?php
$arr = array(1,2,3,4,5,6,7,8,9,10);
print_r(blockSearch(3,1,$arr));
function blockSearch($block,$key,$arr){
$length = count($arr);
$position = 0;
while($length >= $position){//數(shù)組元素比較完了,就結(jié)束循環(huán)
for($i=1;$i=$block;$i++){//循環(huán)次數(shù)為定義的塊的大小
if($arr[$position] == $key){//找到了元素
return 'value:'.$arr[$position] .';position:'.$position;
}
$position++;//每比較一次,位置后移一次
}
}
}
?>
運(yùn)行結(jié)果:
value:1;position:0
更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《PHP數(shù)據(jù)結(jié)構(gòu)與算法教程》、《php程序設(shè)計(jì)算法總結(jié)》、《php字符串(string)用法總結(jié)》、《PHP數(shù)組(Array)操作技巧大全》、《PHP常用遍歷算法與技巧總結(jié)》及《PHP數(shù)學(xué)運(yùn)算技巧總結(jié)》
希望本文所述對大家PHP程序設(shè)計(jì)有所幫助。
您可能感興趣的文章:- PHP實(shí)現(xiàn)的折半查詢算法示例
- PHP有序表查找之二分查找(折半查找)算法示例
- PHP實(shí)現(xiàn)的折半查找算法示例
- php順序查找和二分查找示例
- PHP 冒泡排序 二分查找 順序查找 二維數(shù)組排序算法函數(shù)的詳解
- php線性表順序存儲實(shí)現(xiàn)代碼(增刪查改)
- PHP有序表查找之插值查找算法示例
- PHP基于二分法實(shí)現(xiàn)數(shù)組查找功能示例【循環(huán)與遞歸算法】
- PHP二分查找算法示例【遞歸與非遞歸方法】
- php數(shù)據(jù)結(jié)構(gòu)與算法(PHP描述) 查找與二分法查找
- 最新用php獲取谷歌PR值算法,附上php查詢PR值代碼示例
- 使用PHP實(shí)現(xiàn)二分查找算法代碼分享