原题:
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.
Here are few examples.
[1,3,5,6]
, 5 → 2
[1,3,5,6]
, 2 → 1
[1,3,5,6]
, 7 → 4
[1,3,5,6]
, 0 → 0
刚看到这个题感慨啊,学渣也能3分钟a题,因为这个题太简单了,废话不说,就是插入排序(尼玛这算侮辱插入排序么),代码如下:
class Solution {
public:
int searchInsert(int A[], int n, int target) {
// IMPORTANT: Please reset any member data you declared, as
// the same Solution instance will be reused for each test case.
for (int i = 0; i < n ; i++){
//需要注意是>= 还是>
if (A[i] >= target){
return i;
}
}
//如果比所有的都大,插在末尾,返回n
return n;
}
};