91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么用php二分法查找數組是否包含某一元素

發布時間:2021-07-22 23:33:20 來源:億速云 閱讀:139 作者:chen 欄目:開發技術

本篇內容主要講解“怎么用php二分法查找數組是否包含某一元素”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“怎么用php二分法查找數組是否包含某一元素”吧!

二分法查找數組是否包含某一元素,兼容正反序,代碼實現:

復制代碼 代碼如下:


<?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的實現),還有一些其他技術宅寫的Code,都有問題,根本就沒實現,這些人不測試就放出來誤導人,大家可以去搜搜看下,昨天閑來無事就自己寫一個分享給大家。
這個沒考慮非順序鍵的數組,主要是方法,如果需要大家可以自己擴展下。

到此,相信大家對“怎么用php二分法查找數組是否包含某一元素”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

php
AI

江城| 黑水县| 凤冈县| 且末县| 大城县| 车险| 合水县| 永州市| 石河子市| 库尔勒市| 双城市| 班玛县| 新巴尔虎右旗| 丹棱县| 阳泉市| 苏尼特右旗| 会理县| 勐海县| 新邵县| 资源县| 栾川县| 江西省| 蓬安县| 岳阳市| 南召县| 乌拉特中旗| 乃东县| 上高县| 丽水市| 景谷| 安宁市| 中牟县| 巴彦淖尔市| 东乡| 都江堰市| 漯河市| 沧源| 湖北省| 嘉峪关市| 慈利县| 咸阳市|