• LeetCode 34. Find First and Last Position of Element in Sorted Array


    题目

    二分练习

    class Solution {
    public:
        vector<int> searchRange(vector<int>& nums, int target) {
            
             vector<int> ans;
            if(nums.size()==0)
            {
                ans.push_back(-1);
                ans.push_back(-1);
                
                return ans;
            }
            
            int start = 0;
            int end = nums.size()-1;
            
           
            while(start<=end)
            {
                int mid = (start+end)/2;
                
                if(nums[mid]>=target)
                {
                    end = mid-1;
                }
                else if(nums[mid]<target)
                {
                    start = mid+1;
                }
            }
            
            if(start==nums.size()||nums[start]!=target){
                ans.push_back(-1);
                ans.push_back(-1);
                
                return ans;
            }
            ans.push_back(start);
            start=0;
            end=nums.size()-1;
            
            while(start<=end)
            {
                int mid = (start+end)/2;
                
                if(nums[mid]>target)
                {
                    end = mid-1;
                }
                else if(nums[mid]<=target)
                {
                    start = mid+1;
                }
            }
            
            ans.push_back(end);
            
            return ans;
            
            
        }
    };
    
  • 相关阅读:
    Day 38
    Day 37
    Day 36
    Day 35
    Day 34
    Day 33
    Day 32
    Day 31
    Day 30
    华为CE6180高级ACL配置
  • 原文地址:https://www.cnblogs.com/dacc123/p/11242997.html
Copyright © 2020-2023  润新知