LeetCode-35-Search Insert Position(二分法)-Medium

题意理解:

在vector中找到target的位置,如果target不在vector中,则返回target应该的插入位置。其中,vector为有序数列。


解题思路:

二分法;


解题代码:

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


你可能感兴趣的:(LeetCode)