Given a sorted array and a target value, return the index if the target is found.
---------------------------------------------------------------------------------------------------------------------
题目说明:If not, return the index where it would be if it were inserted in order.You may assume no duplicates in the array.-----------------------Input: [1,3,5,6], 5Output: 2-----------------------Input: [1,3,5,6], 2Output: 1-----------------------Input: [1,3,5,6], 7Output: 4-----------------------Input: [1,3,5,6], 0Output: 0
------------------------------------------------------------------------------------------------------------------------
返回target在有序数组中的位置。如果没有找到,就返回这个数应该放在的位置:
代码如下:
int searchInsert(vector & nums, int target) { if(nums.capacity() == 0) return 0; if(target > nums[nums.capacity() - 1]) //如果要找的数比最后一个数还要大,它的位置应该在末尾 return nums.capacity(); for(int i = 0; i < nums.capacity(); i++){ if(nums[i] >= target) //找到这个数,或者把它放在第一个比它大的数的位置 return i; } }