php實(shí)現(xiàn)的二分查找算法示例
本文實(shí)例講述了php實(shí)現(xiàn)的二分查找算法。分享給大家供大家參考,具體如下:
<?php $arr = array(4,58,11,34,88,45,32,54,63,78); function binary($arr,$bnum) { if(is_array($arr) && count($arr) > 0) { sort($arr); $start = 0; $end = count($arr)-1; $mid = -1; while($start <= $end) { $mid = floor( ($start+$end)/2 ); if($arr[$mid] == $bnum) { return $arr[$mid]; }else if($arr[$mid] < $bnum) { $start = $mid +1; }else if($arr[$mid] > $bnum) { $end = $mid - 1; } } return -1; } } $mm = binary($arr,32); print_r($mm);//輸出32 ?>
更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《PHP數(shù)據(jù)結(jié)構(gòu)與算法教程》、《PHP基本語(yǔ)法入門教程》、《php面向?qū)ο蟪绦蛟O(shè)計(jì)入門教程》、《php字符串(string)用法總結(jié)》、《php+mysql數(shù)據(jù)庫(kù)操作入門教程》及《php常見數(shù)據(jù)庫(kù)操作技巧匯總》
希望本文所述對(duì)大家PHP程序設(shè)計(jì)有所幫助。
相關(guān)文章
php報(bào)錯(cuò)502badgateway解決方法
在本篇文章里小編給大家整理了關(guān)于php報(bào)錯(cuò)502badgateway解決方法相關(guān)知識(shí)點(diǎn),有需要的朋友們參考下。2019-10-10php簡(jiǎn)單創(chuàng)建zip壓縮文件的方法
這篇文章主要介紹了php簡(jiǎn)單創(chuàng)建zip壓縮文件的方法,實(shí)例分析了php基于ZipArchive實(shí)現(xiàn)文件壓縮的相關(guān)技巧,需要的朋友可以參考下2016-04-04php中g(shù)et_meta_tags()、CURL與user-agent用法分析
這篇文章主要介紹了php中g(shù)et_meta_tags()、CURL與user-agent用法,以實(shí)例形式較為詳細(xì)的分析了get_meta_tags()、CURL與user-agent使用時(shí)的注意事項(xiàng)與用法,具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2014-12-12php smarty 二級(jí)分類代碼和模版循環(huán)例子
分享下最近寫的smarty模版引擎輸出二級(jí)分類代碼,主要是靠二維數(shù)組進(jìn)行控制輸出。2011-06-06分享幾種好用的PHP自定義加密函數(shù)(可逆/不可逆)
最近的項(xiàng)目中一直有用到加密函數(shù),今天來(lái)給大家推薦幾個(gè)好用且我自己常用的加密函數(shù),這幾個(gè)都是可逆的加密函數(shù),其中也有針對(duì)于ID的加密函數(shù),需要的朋友可以參考下2020-09-09php中通過(guò)eval實(shí)現(xiàn)字符串格式的計(jì)算公式
有時(shí)候我們對(duì)每一種產(chǎn)品都有一個(gè)提成公式,而這個(gè)計(jì)算提成的公式是以字符串格式存在表中的,當(dāng)我們用這個(gè)計(jì)算公式時(shí),他并不像我們寫的:$a=2+3*5;這樣簡(jiǎn)單的能計(jì)算出結(jié)果,而它是個(gè)字符串,所以,我們就必須把字符串轉(zhuǎn)化為我們能夠處理的結(jié)果2017-03-03表單提交錯(cuò)誤后返回內(nèi)容消失問(wèn)題的解決方法(PHP網(wǎng)站)
這篇文章主要介紹了表單提交錯(cuò)誤后返回內(nèi)容消失問(wèn)題的解決方法,需要的朋友可以參考下2015-10-10php checkdate、getdate等日期時(shí)間函數(shù)操作詳解
PHP的日期時(shí)間函數(shù)date()中介紹了PHP日期時(shí)間函數(shù)的簡(jiǎn)單用法,這類將介紹更多的函數(shù)來(lái)豐富我們的應(yīng)用。2010-03-03