leetcode704二分查找

📃 题目描述

题目链接:二分查找

image-20220121235620677

🔔 解题思路

二分模板默写

int search(vector<int>& nums, int target) {
        int left = 0, right = nums.size() - 1;
        int mid;
        while (left <= right) {
            mid = left + ((right - left) >> 1);//记住加括号

            if (nums[mid] == target) return mid;
            if (nums[mid] > target) right = mid - 1;
            if (nums[mid] < target) left = mid + 1;
        }
        return -1;
    }

💥 复杂度分析

  • 空间复杂度:o(logn)
  • 时间复杂度:o(1)
posted @ 2022-05-07 11:48  D-booker  阅读(14)  评论(0编辑  收藏  举报