Skip to content

Latest commit

 

History

History
27 lines (21 loc) · 525 Bytes

53 - II. 0~n-1中缺失的数字.md

File metadata and controls

27 lines (21 loc) · 525 Bytes

解题思路

二分搜索

数组递增,可以使用二分搜索

当前值和下标相等,说明该数及前面的数都完整,需要往后找 当前值和下标不相等,只可能当前值大于下标,需要往前找

func missingNumber(nums []int) int {
    l, r := 0, len(nums)-1
    for l <= r {
        mid := l + (r-l) >> 1
        if mid == nums[mid] {
            l = mid+1
        } else {
            r = mid-1
        }
    }
    return l
}