返回首页

二分查找 高频追问 Q&A

1. Q: 二分查找适用前提是什么?

A: 有序性或可构造单调性。

2. Q: 为什么会死循环?

A: 区间定义与更新不一致,比如 [l,r] 却写成 l=mid

3. Q: mid 为什么写成 l + (r-l)/2

A: 避免大数相加溢出(在 JS 中习惯保留此写法)。

4. Q: 左边界和右边界模板区别?

A: 判定条件不同:左边界偏向 >= target,右边界偏向 <= target

5. Q: 什么是答案二分?

A: 在“答案空间”二分,靠 check(mid) 的单调性收缩区间。

6. Q: 面试怎么证明写对了?

A: 用 5 类样例:空数组、单元素、全相等、目标不存在、目标在边界。