最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

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

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

<?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);

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

相關文章

  • PHP遠程連接MYSQL數(shù)據(jù)庫非常慢的解決方法

    PHP遠程連接MYSQL數(shù)據(jù)庫非常慢的解決方法

    如果一個問題出現(xiàn)兩次,那么這個問題就值得去研究下了,上次客戶說MYSQL數(shù)據(jù)庫很慢,我還在想,不會是PHP的問題吧?
    2008-07-07
  • PHP is_subclass_of函數(shù)的一個BUG和解決方法

    PHP is_subclass_of函數(shù)的一個BUG和解決方法

    這篇文章主要介紹了PHP is_subclass_of函數(shù)的一個BUG和解決方法,這個BUG存在于php5.3.7版本以前,并且針對interface方面,需要的朋友可以參考下
    2014-06-06
  • PHP的CURL方法curl_setopt()函數(shù)案例介紹(抓取網(wǎng)頁,POST數(shù)據(jù))

    PHP的CURL方法curl_setopt()函數(shù)案例介紹(抓取網(wǎng)頁,POST數(shù)據(jù))

    本文主要對PHP的CURL方法curl_setopt()函數(shù)案例進行介紹:1.抓取網(wǎng)頁的簡單案例;2.POST數(shù)據(jù)案例...下面就跟小編一起來看下吧
    2016-12-12
  • Swoole 5將移除自動添加Event::wait()特性詳解

    Swoole 5將移除自動添加Event::wait()特性詳解

    這篇文章主要給大家介紹了關于Swoole 5將移除自動添加Event::wait()特性的相關資料,文中通過示例代碼介紹的非常詳細,對大家學習或者使用Swoole5具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧
    2019-07-07
  • PHP中全面阻止SQL注入式攻擊分析小結(jié)

    PHP中全面阻止SQL注入式攻擊分析小結(jié)

    PHP是一種力量強大但相當容易學習的服務器端腳本語言,即使是經(jīng)驗不多的程序員也能夠使用它來創(chuàng)建復雜的動態(tài)的web站點。然而,它在實現(xiàn)因特網(wǎng)服務的秘密和安全方面卻常常存在許多困難
    2012-01-01
  • PHP入門學習之字符串操作

    PHP入門學習之字符串操作

    這篇文章主要介紹了PHP入門學習之字符串操作,學習php的同學一定要看一下,都是入門必看的基礎內(nèi)容
    2021-04-04
  • php消息隊列實現(xiàn)詳解

    php消息隊列實現(xiàn)詳解

    消息隊列技術是分布式應用間交換信息的一種技術。消息隊列可駐留在內(nèi)存或磁盤上,隊列存儲消息直到它們被應用程序讀出。通過消息隊列,應用程序可獨立地執(zhí)行,它們不需要知道彼此的位置、或在繼續(xù)執(zhí)行前不需要等待接收程序接收此消息
    2022-08-08
  • snoopy 強大的PHP采集類使用實例代碼

    snoopy 強大的PHP采集類使用實例代碼

    Snoopy是一個php類,用來模擬瀏覽器的功能,可以獲取網(wǎng)頁內(nèi)容,發(fā)送表單。
    2010-12-12
  • 說明的比較細的php 正則學習實例

    說明的比較細的php 正則學習實例

    首先,讓我們看看兩個特別的字符:’^’ 和 ‘$’ 他們是分別用來匹配字符串的開始和結(jié)束,一下分別舉例說明
    2008-07-07
  • php實現(xiàn)字符串翻轉(zhuǎn)的方法

    php實現(xiàn)字符串翻轉(zhuǎn)的方法

    這篇文章主要介紹了php實現(xiàn)字符串翻轉(zhuǎn)的方法,涉及php操作字符串的技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-03-03

最新評論

阳曲县| 松滋市| 靖州| 开阳县| 邵东县| 伊通| 钟山县| 龙井市| 大洼县| 称多县| 沁阳市| 金秀| 龙山县| 德化县| 松江区| 宁陕县| 芦溪县| 美姑县| 乌恰县| 丰镇市| 松滋市| 拉萨市| 方山县| 彭水| 苏尼特左旗| 东乌| 尚义县| 扶风县| 财经| 灯塔市| 赤城县| 息烽县| 济阳县| 望城县| 海林市| 泾川县| 通山县| 庆云县| 伊通| 增城市| 岗巴县|