二分查找算法模板总结
文章目录基本模板来源一般流程伪代码细节问题部分常见题型基本模板来源二分查找为什么总是写错?一般流程满足isBlue(m)函数的情况会导致l移动。因此最终l所在的位置即为最后一个满足isBlue(m)的数组元素的位置或-1,最终r在的位置即为第一个不满足isBlue(m)的数组元素的位置或N。后处理一般是边界处理,即检查返回的l或r是否越界(即l或r不移动),一般有以下三种情况:数组元素只有一个。不存在“等于”的数字。符合条件的数字恰好在端点处,如:在[2, 5]中寻找≤ 5的数字,最终