二分查找或插入

来源:互联网 发布:近年来重庆物流数据 编辑:程序博客网 时间:2024/04/30 19:03

很简单,就是要注意一下插入的话,如果插入在右边是left+1,左边是left!


    int searchInsert(vector<int>& nums, int target) {        int left,right,i,n,mid;        n=nums.size();        left=0;right=n-1;        while(left<right)        {            mid=(left+right)/2;            if(nums[mid]<target)                left=mid+1;            else if(nums[mid]>target)                right=mid-1;            else                return mid;        }                if(nums[left]<target)            return left+1;         else return left;    }


0 0