【Leetcode】二分法

题目:数组

在排序数组中查找元素的第一个和最后一个位置。spa

 

二分法的思想很是简单,然而其中的实现细节很是繁琐,容易出错。本推文很是详细地介绍二分法的实现细节。code

总结几点注意事项:排序

  1. 初始上、下界的取值;
  2. 判断语句不要出现 else ,所有展开成 else if 方便理解;
  3. 注意搜索区间和 while 的终止条件;
  4. 上、下界的更新方式与搜索区间存在联系;
  5. 查找左/右边界的时候,当nums[mid] == target 时不要当即返回,而要收紧右/左侧边界以肯定左/右边界。
相关文章
相关标签/搜索