亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 邏輯算法 > 正文

PHP折半(二分)查找算法實例分析php技巧

2020-03-22 19:20:46
字體:
來源:轉載
供稿:網友
這篇文章主要介紹了PHP折半(二分)查找算法,結合實例形式較為詳細的分析了php折半(二分)查找算法的概念、原理、實現與使用方法,并附帶了一個php折半(二分)查找算法類供大家參考,需要的朋友可以參考下

本文實例講述了PHP折半(二分)查找算法。分享給大家供大家參考,具體如下:

折半查詢只適用于已經按照正序或者逆序排序的數組,字符串等;

算法:

先取數組的中間位置,無中間位置,則向下取整;

從中間進行折半,大小判斷,進入前半段或者后半段;

再對前半段或者后半段進行同樣的折半查詢,

直到查詢到匹配的字符,才停止(本例用break,如果置于函數中,return即可)

php實現的代碼如下:

 ?php$arr = array(1,2,3,4,5,6,7,8,9,10);//數組$key = 4;//要查詢的關鍵字$low = 0;//開始位的標志$high = count($arr);//終止位的標志while($low = $high){//查詢開始結束的條件 $mid = floor(($low + $high)/2);//進行中間位置計算,向下取整 if($arr[$mid] == $key){//查詢成功 echo $arr[$mid]; break;//結束本頁執行,函數可用return }elseif($arr[$mid] $key){ //查詢前半段,把結束標志移到中間位置前一位 $high = $mid - 1; }else{ //查詢后半段,把開始位置移到中間位置的后一位 $low = $mid + 1;運行結果:4? 

補充:折半(二分)查找算法類:

/** * Description:php實現二分查找算法的類 * @author wzyhtml' target='_blank'>class binary_search{ public $arr; public $key; function __construct($arr,$key){ //這里初始化的數組已經是有序數組 $this- arr=$arr; $this- key=$key; function binarysearch(){ $start=0; $end=count($this- arr)-1; while($start =$end){ //mid的取值可以為上整數或者下整數 $mid=ceil(($start+$end)/2); //$mid=($start+$end) 1; //$mid=intval(($start+$end)/2); if($this- arr[$mid] $this- key){ $start=$mid+1; }else if($this- arr[$mid] $this- key){ $end=$mid-1; }else{ return $mid;}

可能大家還會遇到這種情況,數組中的元素有重復數據,需要返回的是重復數據中的第一個元素的位置,例如

$arr=array(1,2,3,4,5,6,6,6,6,7,8);

查找6這個元素時返回的位置應該為5,而不是其他(下標從0開始計數),這樣需要在返回的mid進行判斷,代碼如下:

/** * Description:php實現二分查找算法的類 * @author wzyclass binary_search{ public $arr; public $key; function __construct($arr,$key){ //這里初始化的數組已經是有序數組 $this- arr=$arr; $this- key=$key; function binarysearch(){ $start=0; $end=count($this- arr)-1; while($start =$end){ //mid的取值可以為上整數或者下整數 $mid=ceil(($start+$end)/2); //$mid=($start+$end) 1; //$mid=intval(($start+$end)/2); if($this- arr[$mid] $this- key){ $start=$mid+1; }else if($this- arr[$mid] $this- key){ $end=$mid-1; }else{ //返回第一個匹配的元素 for($i=$mid-1;$i $i--){ if($this- arr[$i]==$this- key){ $mid=$i; }else{ break; return $mid;}

您可能感興趣的文章:

PHP生成騰訊云COS接口需要的請求簽名的相關內容

PHP 訪問數據庫配置通用方法(json)巧

PHP連接MySQL數據庫并以json格式輸出的相關講解

以上就是PHP折半(二分)查找算法實例分析php技巧的詳細內容,PHP教程

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
成人激情视频在线| 久久伊人免费视频| 国产女同一区二区| 亚洲天堂男人天堂| 亚洲激情在线观看视频免费| 久久夜精品va视频免费观看| 57pao成人永久免费视频| 日韩电影免费观看在线| 在线视频亚洲欧美| 日韩av大片在线| 久久久久久久久久久网站| 色青青草原桃花久久综合| 97免费中文视频在线观看| 国产一区二区三区视频| 欧美一区二区影院| 久久人人爽国产| 国产91免费观看| 国产精品大片wwwwww| 国产精品午夜视频| 欧美电影在线观看高清| 亚洲成人久久久久| 欧美精品一区三区| 久久精品99久久香蕉国产色戒| 亚洲欧美一区二区三区四区| 欧美亚洲国产另类| 国产精品一区二区久久久久| 亚洲欧美一区二区三区情侣bbw| 久热精品视频在线| 欧美精品一本久久男人的天堂| 蜜臀久久99精品久久久无需会员| 亚洲一区二区三区在线免费观看| 91sa在线看| 5278欧美一区二区三区| 久久精品亚洲国产| 在线精品国产欧美| 高清欧美性猛交xxxx| 国产精品一区二区久久国产| 欧美日本国产在线| 国产精品高潮视频| 亚洲曰本av电影| 久久久国产视频| 日韩亚洲成人av在线| 国产精品观看在线亚洲人成网| 7m精品福利视频导航| 亚洲va欧美va在线观看| 日韩在线播放av| 日韩在线欧美在线| 91成人在线观看国产| 亚洲欧美日韩视频一区| 国产精品日韩在线观看| 成人激情免费在线| 欧美性猛交xxxx乱大交极品| 国产精品视频地址| 久久久久久久久网站| 精品国产91乱高清在线观看| 91爱爱小视频k| 国产亚洲精品美女久久久久| 精品亚洲一区二区三区在线播放| 国内外成人免费激情在线视频网站| 精品免费在线视频| 久久久91精品国产一区不卡| 久久综合亚洲社区| 精品小视频在线| 中文字幕欧美精品日韩中文字幕| 中文字幕在线观看日韩| 欧美重口另类videos人妖| 91在线中文字幕| 国内外成人免费激情在线视频网站| 亚洲精品动漫久久久久| 国产一区二区黄| 成人午夜激情网| 国产精品wwwwww| 成人亚洲综合色就1024| 国语自产精品视频在线看一大j8| 精品福利樱桃av导航| 亚洲黄页视频免费观看| 久久久久久中文| 美女久久久久久久| 亚洲第一区第一页| 国产精品wwwwww| 久久青草精品视频免费观看| 国产精品久久久久久久久久久久| 正在播放国产一区| 日韩欧美在线观看| 亚洲综合大片69999| 日韩动漫免费观看电视剧高清| 成人xxxx视频| 96精品视频在线| 美女扒开尿口让男人操亚洲视频网站| 亚洲网站视频福利| 久久天天躁日日躁| 精品高清一区二区三区| 性夜试看影院91社区| 欧美日韩免费网站| 国产日产久久高清欧美一区| 色噜噜久久综合伊人一本| 日韩av网址在线| 欧美性极品少妇精品网站| 26uuu日韩精品一区二区| 亚洲国产精品字幕| 欧美精品激情blacked18| 成人午夜激情免费视频| 亚洲视频在线免费观看| 久久精品这里热有精品| 黄色成人av在线| 中文字幕久热精品视频在线| 亚洲精品之草原avav久久| 欧美激情按摩在线| 久久91亚洲精品中文字幕奶水| 精品亚洲aⅴ在线观看| 欧美高清在线观看| 国产精品96久久久久久又黄又硬| 欧美日韩福利在线观看| 国产91亚洲精品| 欧美成人精品h版在线观看| 欧美专区福利在线| 精品中文视频在线| 中文字幕综合一区| 一色桃子一区二区| 狠狠色狠狠色综合日日五| 夜夜躁日日躁狠狠久久88av| 欧美疯狂做受xxxx高潮| 成人欧美一区二区三区黑人孕妇| 亚洲成人激情小说| 精品国产成人av| 欧美性猛交xxxx乱大交蜜桃| 91在线|亚洲| 久久精品国产精品亚洲| 国产美女久久精品| 91久久久久久久一区二区| 中文字幕成人精品久久不卡| 国产精品美女主播| 成人自拍性视频| 欧美夜福利tv在线| 亚洲第一级黄色片| 欧美一性一乱一交一视频| 成人国产精品久久久久久亚洲| www高清在线视频日韩欧美| 久久天天躁狠狠躁老女人| 永久555www成人免费| 国产精品福利无圣光在线一区| 亚洲女同性videos| 91精品在线一区| 国产成人精品在线| 久久久最新网址| 欧美插天视频在线播放| 久久九九国产精品怡红院| 欧美大胆在线视频| 日韩欧美在线免费| 97超碰国产精品女人人人爽| 夜色77av精品影院| 中文字幕欧美国内| 亚洲国产精品成人一区二区| 久久久久久久久综合| 51色欧美片视频在线观看| 亚洲国产精品电影在线观看| 亚洲欧美成人一区二区在线电影| 91精品国产777在线观看| 97香蕉超级碰碰久久免费的优势| 国产精品美女主播在线观看纯欲| 日韩免费在线看| 国产91色在线| 欧美激情在线观看| 国产男女猛烈无遮挡91|