PHP实现的折半查询算法示例
本文实例讲述了服务器端编程语言(专业超文本预处理器的缩写)实现的折半查询算法。分享给大家供大家参考,具体如下:
什么是折半查询算法?具体文字描述自己百度。直接上代码:
?phpheader(' Content-type : text/html;charset=utf-8 ');/* 折半查询算法-不用递归*/函数qSort($data=array(),$ x=0){ $ startIndex=0;//开始索引$ endIndex=count($ data)-1;//结束索引$ index=0;$ number=0;//计数器do { if($ endIndex $ startIndex){ $ search index=ceil($ endIndex-$ startIndex)/2);} else if($ endIndex==$ startIndex){ $ search index=$ endIndex;} else { $ index=-1;打破;} $ SearchIndex=($ StartIndex-1);"回声"检索范围:'.$startIndex .~ '.$endIndex .英国铁路公司检索位置:'.$searchIndex .'检索值为:'.$ data[$ Search index];echo ' br====================================brbr ';if($ data[$ search index]==$ x){ $ index=$ search index;打破;} else if($ x $ data[$ search index]){ $ startIndex=$ search index 1;} else { $ endIndex=$ search index-1;} $ number } while($ number count($ data));返回$ index}/*折半查询算法-使用递归*/函数sSort($data,$x,$startIndex,$ endIndex){ if($ endIndex $ startIndex){ $ search index=ceil($ endIndex-$ startIndex)/2);} else if($ endIndex==$ startIndex){ $ search index=$ endIndex;} else { return-1;} $ SearchIndex=($ StartIndex-1);"回声"检索范围:'.$startIndex .~ '.$endIndex .英国铁路公司检索位置:'.$searchIndex .'检索值为:'.$ data[$ Search index];echo ' br====================================brbr ';if($ data[$ search index]==$ x){ return $ search index;} else if($ x $ data[$ search index]){ $ startIndex=$ search index 1;返回sSort($data,$x,$startIndex,$ endIndex);} else { $ endIndex=$ search index-1;返回sSort($data,$x,$startIndex,$ 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,11,0,count($ data)-1);//使用递归的排序方法"回声"结果:'.$索引运行结果:
更多关于服务器端编程语言(专业超文本预处理器的缩写)相关内容感兴趣的读者可查看本站专题: 《PHP数据结构与算法教程》 、 《PHP基本语法入门教程》 、 《php面向对象程序设计入门教程》 、 《php字符串(string)用法总结》 及《php程序设计算法总结》
希望本文所述对大家服务器端编程语言(专业超文本预处理器的缩写)程序设计有所帮助。
版权声明:PHP实现的折半查询算法示例是由宝哥软件园云端程序自动收集整理而来。如果本文侵犯了你的权益,请联系本站底部QQ或者邮箱删除。