题目
给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。
你可以假设数组中无重复元素。
示例
输入: [1,3,5,6], 5
输出: 2
输入: [1,3,5,6], 2
输出: 1
代码
public class Solution {
public int SearchInsert(int[] nums, int target)
{
int left = 0;
int right = nums.Length - 1;
for(int i = 0; i < nums.Length; i++)
{
if (left<=right)
{
int mid = left + (right - left)/2;
if(nums[mid] ==target)
{
return mid;
}
if (nums[mid]>target)
{
right = mid - 1 ;
}
else
{
left = mid + 1;
}
}
}
return left;
}
}
网友评论