35搜索插入位置
2023-07-03 15:03 作者:MicroShuai | 我要投稿
使用二分查找的条件:
1️⃣ 有序 元素
2️⃣ 不重复、
重要点总结:
1️⃣了解二分查找原理
2️⃣有关上面两行注释的优化:
为什么不需要去判断输入 这样的数组 int[] arr = {0};
答: left 和 right 为 0 。那么mid 肯定也为0 呀,0 等于 target ,那直接返回 0,🤭
为什么优化最后的if判断?
答:当所给的target值没找到时候,这时 mid =right =left (小伙伴门可以画图喔),
此时的 arr[mid] 值是始终小于 target ,
并且,那么 mid+1 = target插入索引的下标
又因为right = left 执行最后一次 循环 让 left = mid +1;
所以此时 的 left 不就等于 target插入索引的下标 了吗?
最后 直接 返回 left !!!!!