二分法查找

二分法查找原理

使用二分法查找時(shí)需要以下兩個(gè)條件:

沒有重復(fù)元素

已經(jīng)排好順序

假設(shè)給定一組排好序且沒有重復(fù)元素的數(shù)字,要從這些數(shù)字中快速找到x所在的位置,可以從這組數(shù)字的中間位置開始找,如果當(dāng)前值與x相等,則查找成功,如果小于x則從后半段的中間位置繼續(xù)找,如果大于x則從前半段的中間位置繼續(xù)尋找,直到找到x所在的位置

例如一個(gè)數(shù)組里面的元素有:1,5,8,15,18,23,30

快速找到23對(duì)應(yīng)的下標(biāo)值

第一次:取得數(shù)組的中間位置的值15,15小于23,所以繼續(xù)從后半段開始找,后半段的元素是18,23,30

第二次:取得數(shù)組后半段元素中間位置的值23,23等于23,即找到23對(duì)應(yīng)的下標(biāo)值5

代碼實(shí)現(xiàn)

的下標(biāo)是:" + index);
?著作權(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),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

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

  • 二分法查找原理 使用二分法查找時(shí)需要以下兩個(gè)條件: 沒有重復(fù)元素 已經(jīng)排好順序 假設(shè)給定一組排好序且沒有重復(fù)元素的...
    eb6a9063c7cd閱讀 523評(píng)論 0 1
  • Swift的二分法查找實(shí)踐 在這篇教程中我們會(huì)使用計(jì)算機(jī)科學(xué)里一個(gè)基礎(chǔ)的算法:二分法查找binary search...
    不是謝志偉閱讀 2,015評(píng)論 1 5
  • 二分法查找原理 使用二分法查找時(shí)需要以下兩個(gè)條件:沒有重復(fù)元素已經(jīng)排好順序假設(shè)給定一組排好序且沒有重復(fù)元素的數(shù)字,...
    java萌新小白閱讀 180評(píng)論 0 1
  • php實(shí)現(xiàn)二分法的查找其實(shí)很簡(jiǎn)單,跟我一起來看看怎么實(shí)現(xiàn)吧。 二分法查找需要數(shù)組是一個(gè)遞增的數(shù)組。 想要寫出二分法...
    f12c2f60fcbb閱讀 991評(píng)論 0 0
  • 1.二分法查找。 思想:假設(shè)數(shù)據(jù)是按升序排序的,對(duì)于給定值 x,從序列的中間位置開始比較,如果當(dāng)前位置值等于 x,...
    Themores閱讀 586評(píng)論 0 1

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