标签搜索

目 录CONTENT

文章目录

【算法模板】 二分查找

陈铭
2022-02-04 / 0 评论 / 0 点赞 / 107 阅读 / 129 字 / 正在检测是否收录...

例题:二分查找

找到数组ints中,数字7第一次出现的索引(ints已经升序排列)


class Solution {
    public static void main(String[] args) {
		// 找到7第一次出现的索引
        int[] ints = {1, 3, 5, 7, 7, 8, 8, 9, 12, 16};
        int l = 0, r = ints.length-1;
        // 一定要l < r
        while (l < r) {
            // 避免int溢出
            int mid = l + (r - l) / 2;
            // mid<=r,能够将l和r逼近目标左边界
            if (ints[mid]>=7) {
                r = mid;
            } else {
                l = mid + 1;
            }
        }
        System.out.println(l);
        System.out.println(r);
    }
}
0

评论区