35. Search Insert Position

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


程序说明:

如果数组为空,则发挥位置0,若数组中无大于等于的数,则返回数组长度即可。

int searchInsert(int* nums, int numsSize, int target) {
    if ( numsSize == 0 )
    {
        return 0;
    }
    int cnt;
    for ( cnt = 0; cnt < numsSize; cnt++ )
    {
        if ( *(nums + cnt) >= target )
        {
            return cnt;
        }
    }
    return numsSize;
}

由于数组已经是排序的了,故只需逐个开始比较大小,找到相应的位置返回即可