二分搜索

登录以参加训练计划

课件

二分搜索基础

二分搜索是一种在有序数组中查找目标值的搜索方法。每次将搜索范围缩小一半,直到找到目标或确定不存在。

二分查找模板

int binary_search(int l, int r, int x) {
    while (l <= r) {
        int mid = (l + r) / 2;
        if (a[mid] >= x) {
            r = mid - 1;
        } else {
            l = mid + 1;
        }
    }
    return l;
}

整数二分

适用于:在有序序列中查找第一个满足条件的元素位置。

实数二分

适用于:在实数范围内求解方程根。

特点:需要设定精度 eps,通常用 while (r - l >= eps) 控制循环。

章节 1. 课上讲解

开放

题目 尝试 AC 难度
B3627   立方根 14 6 8
P1024   一元三次方程求解 6 5 10
P1102   A-B数对 11 5 9
P1678   烦恼的高考志愿 34 4 9
P2249   二分查找 23 4 8
 
参加人数
6
创建人