题解 | #二分查找-I#
二分查找-I
https://www.nowcoder.com/practice/d3df40bd23594118b57554129cadf47b
解题思路与心得:
二分法。
要点是 while 的判断条件。我一开始写 high > low,后来检测的时候,只有一个元素的时候,需要单独再 while 之外考虑。改为 high >= low,就包含了这种情况。
另一个要点是怎么跳出 while,本题重点是,怎么缩写 low 到 high 的空间。我一开始写 low = mid,检测的时候发现,比如数组是[1,2],这种情况会死循环。最后改成 low = mid + 1。
做完题目注意检查的点:
1、数组边界检查:没有元素、只有一个元素、只有两个元素、有偶数或奇数个元素的情况。
2、目标元素:在最前或最后。
#刷题日记#