无码av一区二区三区无码,在线观看老湿视频福利,日韩经典三级片,成 人色 网 站 欧美大片在线观看

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

二分查找的實(shí)現(xiàn),和易錯(cuò)點(diǎn)

2023-07-01 21:04 作者:MicroShuai  | 我要投稿

輸入: nums = [-1,0,3,5,9,12], target = 9?

輸出: 4 解釋: 9?出現(xiàn)在 nums 中并且下標(biāo)為 4

二分查找要滿足兩個(gè)條件:

1??: 元素都是從小到大,或者從大到小排列?

2??:元素不重復(fù)


1??寫代碼易錯(cuò)點(diǎn), left<=right 是循環(huán)的結(jié)束條件,當(dāng)left比right大時(shí),說明沒有找到對應(yīng)的值

? 如果條件為left<right ,那right指針應(yīng)該為arr.length 但是沒有作為長度為下標(biāo)的元素,這樣的寫法并不推薦

2??mid?為什么是left+(right-left)/2?

? ? 如果當(dāng)left 和 right 很大的時(shí)候,會溢出,超過int最大值,所以使用right-left 來保證不會溢出

總結(jié): 二分查找的復(fù)雜度為O(log2n) 隨這n越來越大,相比O(n)?時(shí)間復(fù)雜度會越來越小




二分查找的實(shí)現(xiàn),和易錯(cuò)點(diǎn)的評論 (共 條)

分享到微博請遵守國家法律
民勤县| 霍山县| 海丰县| 莱州市| 梓潼县| 宁明县| 昌宁县| 大洼县| 墨玉县| 蕉岭县| 罗山县| 漳浦县| 诏安县| 久治县| 调兵山市| 科技| 新化县| 闽侯县| 息烽县| 利川市| 高要市| 重庆市| 织金县| 洪湖市| 乌什县| 阜新市| 西林县| 奉新县| 汪清县| 金湖县| 通化市| 湛江市| 永嘉县| 轮台县| 来宾市| 尚志市| 云龙县| 嘉禾县| 车致| 诸暨市| 乌苏市|