35. Search Insert Position
题目:
解题思路:
其实遍历一遍即可,还有就是要处理一下特殊情况,其中有一个小细节需要注意。先贴代码:
int searchInsert(int* nums, int numsSize, int target) {//sorted array
int loc=0;
int flag=0;
int i=0;
while(i<numsSize-1){
if(target>nums[i]&&target<=nums[i+1]){//停止,insert
loc=i+1;
flag=1;
break;
}
else i++;
}
if (flag==0){
if(nums[0]>target){
loc=0;
}
if(nums[numsSize-1]<target)
loc=numsSize;
}
return loc;
}
if (flag==0){
if(nums[0]>target){
loc=0;
}
if(nums[numsSize-1]<target)
loc=numsSize;
}
return loc;
这一块本来是在每一个判断语句里面直接return,但是出现了可能返回空值的情况,但事实上并不会出现这种情况= =,算了,于是最后都改为了return loc。
最后贴上运行时空:
撒花~