问题描述
给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。
你可以假设数组中无重复元素。
示例 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
解决方式
C语言暴力查找
int searchInsert(int* nums, int numsSize, int target)
{
int i,j;
for(i=0;i<numsSize;)
{
if(*(nums+i)<target)
{
i++;
continue;
}
else if(*(nums+i)==target)
{
return i;//后面不用break吧
}
else if(*(nums+i)>target)
{
return i;
}
}
if(i==numsSize)//如果巨大
{
return numsSize;
}
return 0;
}