二分搜索


title: 二分搜索


一個(gè)最簡單的二分搜索示例,原理太簡單就不介紹了,上代碼:

public class BinarySearch {
    public static void main(String[] args){
        //測試數(shù)據(jù)
        int[] a = new int[]{0,1,2,3,4,5,6,7};
        System.out.print(rank(5, a));
    }

    /**
     * @param key 待查找的int
     * @param a int數(shù)組,必須為有序數(shù)據(jù)
     * @return
     */
    public static int rank(int key, int[] a){
        int lo = 0;
        int hi = a.length - 1;

        while (lo <= hi){
            int mid = lo + (hi - lo)/2;
            if(key < a[mid]){
                hi = mid - 1;
            }else if (key > a[mid]){
                lo = mid + 1;
            }else {
                return mid;
            }
        }
        return -1;
    }
}
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 二分搜索(binary search),也叫做 折半搜索(half-interval search),對(duì)數(shù)搜索(l...
    陳林峰LeonChen1024閱讀 3,101評(píng)論 0 0
  • 二分搜索(英語:binary search),也稱折半搜索(英語:half-interval search)、對(duì)數(shù)...
    云抱住陽光太陽沒放棄發(fā)亮閱讀 818評(píng)論 0 5
  • 聲明:算法和數(shù)據(jù)結(jié)構(gòu)的文章均是作者從github上翻譯過來,為方便大家閱讀。如果英語閱讀能力強(qiáng)的朋友,可以直接到s...
    UnsanYL閱讀 845評(píng)論 0 7
  • 大學(xué),應(yīng)該是戀愛最美好的時(shí)候,因?yàn)椴辉傧窀咧心菢樱驗(yàn)樵俨粫?huì)有老師因?yàn)橛X得早戀影響學(xué)習(xí)而各種想方設(shè)拆散我們一對(duì)對(duì)可...
    Mercy_8fa8閱讀 224評(píng)論 0 0
  • 今天成績出來了,考的不理想??!意料之中的事。最近一段時(shí)間,學(xué)習(xí)態(tài)度不端正。書寫也不認(rèn)真。希望這個(gè)假期能安目標(biāo)執(zhí)行。...
    會(huì)飛的抱抱閱讀 132評(píng)論 0 0

友情鏈接更多精彩內(nèi)容