亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

解析php二分法查找數(shù)組是否包含某一元素

 更新時(shí)間:2013年05月23日 11:33:36   作者:  
本篇文章是對(duì)在php中二分法查找數(shù)組是否包含某一元素進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
二分法查找數(shù)組是否包含某一元素,兼容正反序,代碼實(shí)現(xiàn):
復(fù)制代碼 代碼如下:

<?php

 $searchValue = (int)$_GET['key'];

 function search(array $array, $value)
 {
     $max = count($array)-1;
     $min = 0;
     $isAscSort = $array[$min] < $array[$max];

     while (TRUE) {
         $sum = $min+$max;
         $midKey = (int)($sum%2 == 1 ? ceil($sum/2) : $sum/2);

         if ($max < $min) {
             return -1;
         } else if ($value == $array[$midKey]) {
             return 1;
         } else if ($value > $array[$midKey]) {
             $isAscSort ? $min = $midKey+1 : $max = $midKey-1;
         } else if ($value < $array[$midKey]) {
             $isAscSort ? $max = $midKey-1 : $min = $midKey+1;
         }
     }
 }

 $array = array(
     '4', '5', '7', '8', '9', '10', '11', '12'
 );
 // 正序
 echo search($array, $searchValue);

 // 逆序
 rsort($array);
 echo search($array, $searchValue);

這個(gè)之前搜過(guò),看過(guò)百度百科的例子(Java的實(shí)現(xiàn)),還有一些其他技術(shù)宅寫(xiě)的Code,都有問(wèn)題,根本就沒(méi)實(shí)現(xiàn),這些人不測(cè)試就放出來(lái)誤導(dǎo)人,大家可以去搜搜看下,昨天閑來(lái)無(wú)事就自己寫(xiě)一個(gè)分享給大家。
這個(gè)沒(méi)考慮非順序鍵的數(shù)組,主要是方法,如果需要大家可以自己擴(kuò)展下。

相關(guān)文章

最新評(píng)論