加入收藏 | 设为首页 | 会员中心 | 我要投稿 湖南网 (https://www.hunanwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程 > 正文

PHP实现的折半查询算法示例

发布时间:2021-03-05 19:15:57 所属栏目:编程 来源:网络整理
导读:本篇章节讲授PHP实现的折半查询算法。供各人参考研究详细如下: 什么是折半查询算法?详细笔墨描写本身百度。直接上代码: $startIndex){ $searchIndex = ceil(($endIndex - $startIndex) / 2); }else if($endIndex == $startIndex){ $searchIndex

本篇章节讲授PHP实现的折半查询算法。分享给各人供各人参考,详细如下:

什么是折半查询算法?详细笔墨描写本身百度。直接上代码:

$startIndex){ $searchIndex = ceil(($endIndex - $startIndex) / 2); }else if($endIndex == $startIndex){ $searchIndex = $endIndex; }else{ $index = -1; break; } $searchIndex += ($startIndex - 1); echo '检索范畴:'.$startIndex.' ~ '.$endIndex.'
检索位置:'.$searchIndex.'检索值为:'.$data[$searchIndex]; echo '
=======================

'; if($data[$searchIndex] == $x){ $index = $searchIndex; break; }else if($x > $data[$searchIndex]){ $startIndex = $searchIndex + 1; }else{ $endIndex = $searchIndex - 1; } $number++; }while($number < count($data)); return $index; } /* 折半查询算法--行使递归 */ function sSort($data,$x,$startIndex,$endIndex){ if($endIndex > $startIndex){ $searchIndex = ceil(($endIndex - $startIndex) / 2); }else if($endIndex == $startIndex){ $searchIndex = $endIndex; }else{ return -1; } $searchIndex += ($startIndex - 1); echo '检索范畴:'.$startIndex.' ~ '.$endIndex.'
检索位置:'.$searchIndex.'检索值为:'.$data[$searchIndex]; echo '
=======================

'; if($data[$searchIndex] == $x){ return $searchIndex; }else if($x > $data[$searchIndex]){ $startIndex = $searchIndex + 1; return sSort($data,$endIndex); }else{ $endIndex = $searchIndex - 1; return sSort($data,$endIndex); } } $data = array(1,3,4,6,9,11,12,13,15,20,21,25,33,34,35,39,41,44); $index = qSort($data,11); // 不消递归的排序要领 $index = sSort($data,count($data) - 1); // 行使递归的排序要领 echo '功效:'.$index;

运行功效:

PHP实现的折半查询算法示例

更多关于PHP相干内容感乐趣的读者可查察本站专题:《》、《》、《》、《》及《》

但愿本文所述对各人PHP措施计划有所辅佐。

(编辑:湖南网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读