搜索插入位置

容易 搜索插入位置 查看运行结果 

28%
通过

给定一个排序数组和一个目标值,如果在数组中找到目标值则返回索引。如果没有,返回到它将会被按顺序插入的位置。

你可以假设在数组中无重复元素。

您在真实的面试中是否遇到过这个题? 
Yes
样例

[1,3,5,6],5 → 2

[1,3,5,6],2 → 1

[1,3,5,6], 7 → 4

[1,3,5,6],0 → 0

public class Solution {
    /** 
     * param A : an integer sorted array
     * param target :  an integer to be inserted
     * return : an integer
     */
    public static int searchInsert(int[] A, int target) {
        // write your code here
        int start = 0;
        int end = A.length-1;
        while(start<=end)
        {
            int mid = (start+end)/2;
            if(A[mid]<target)
            {
                start = mid+1;
            }
            else if(A[mid]>target)
            {
                end = mid-1;
            }
            else return mid;
        }
        return start;
    }
}





你可能感兴趣的:(二分查找,数组)