1. 程式人生 > >leetcode 35 搜尋插入位置 Search Insert Position 二分查詢

leetcode 35 搜尋插入位置 Search Insert Position 二分查詢

class Solution {
public:
    int searchInsert(vector<int>& nums, int target) {
        int start=0;
        int end=nums.size()-1;
        if(target<nums[0]){
            return 0;
        } 
        if(target>nums[end]){
            end=end+1;
            return end;
        }
        while(start<end){
            int mid=(start+end)/2;
            if(target==nums[mid]){
                return mid;
            }
            else if(target<nums[mid]){
                end=mid-1;
            }
            else if(target>nums[mid]){
                start=mid+1;
            }
        }
        int mid=(start+end)/2;
            if(target>nums[mid]){
                  mid=mid+1; 
            }
        return mid;
    }
};