搜索插入位置
文章目录
【注意】最后更新于 May 11, 2022,文中内容可能已过时,请谨慎使用。
搜索插入位置
题目
给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。
你可以假设数组中无重复元素。
示例 1:
输入: [1,3,5,6], 5 输出: 2 示例 2:
输入: [1,3,5,6], 2 输出: 1 示例 3:
输入: [1,3,5,6], 7 输出: 4 示例 4:
输入: [1,3,5,6], 0 输出: 0
来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/search-insert-position 著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
解决方法
思路
- 第一想法就是直接遍历
|
|
- 第二个方法是看了解题才想起来,这可以使用二分法。
|
|
- 需要注意,当新插入的值在最左侧和最右侧的情况,也就是 left == right 的情况的返回值。
- 最左侧的时候返回left,也就是0;
- 最右侧的时候返回left,此时的left是最右侧索引值 + 1;
文章作者 Mazy
上次更新 2022-05-11