• leetcode704 C++ 72ms 二分查找


    class Solution {
    public:
        int rec(vector<int>& nums, int left, int right, int target){
            int mid = (left + right)/2;
            if(left == right || right-left == 1){
                if(nums[left]==target){
                    return left;
                }
                else if(nums[right] == target){
                    return right;
                }
                else{
                    return -1;
                }
            }
            if(nums[mid] == target){
                return mid;
            }
            else{
                if(nums[mid] < target){
                    return rec(nums, mid+1, right, target);
                }
                else{
                    return rec(nums, left, mid-1, target);
                }
            }
    
        }
    
        int search(vector<int>& nums, int target) {
            if(nums.empty()){
                return -1;
            }
            return rec(nums, 0, nums.size()-1, target);
        }
    };
    
  • 相关阅读:
    Spring
    JavaWeb
    JDBC
    MYSQL
    IDEA个人常用快捷键
    Web前端-JAVASCRIPT
    Web前端-HTML
    注解与反射
    多线程
    区块链 ATS多策略量化机器人简介
  • 原文地址:https://www.cnblogs.com/theodoric008/p/9456839.html
Copyright © 2020-2023  润新知