LeetCode:67.寻找旋转排序数组中的最小值

目录

1.寻找旋转排序数组中的最小值


1.寻找旋转排序数组中的最小值

通过用一个比较值来判断大小

旋转排序数组符合上面的图,我们用x来表示数组的最后一个元素,如果大于x的话,说明在上半部分的有序区间,如果小于x的话,说明落在了下半部分的有序区间

cpp 复制代码
class Solution {
public:
    int findMin(vector<int>& nums) {
        int n = nums.size();
        int left = 0, right = n - 1;
        int x = nums[right];
        while(left < right)
        {
            int mid = left + (right - left) / 2;
            if(nums[mid] > x)
                left = mid + 1;
            else
                right = mid;
        }
        return nums[left];
    }
};
相关推荐
代码不停16 分钟前
Java前缀和算法题目练习
java·开发语言·算法
courniche20 分钟前
分组密码常见结构简介
算法·密码学
涤生z24 分钟前
list.
开发语言·数据结构·c++·学习·算法·list
茜茜西西CeCe43 分钟前
数字图像处理-图像增强(2)
人工智能·算法·计算机视觉·matlab·数字图像处理·图像增强·陷波滤波器
薰衣草23331 小时前
hot100练习-11
算法·leetcode
雾时之林1 小时前
数据结构--------顺序表
数据结构
地平线开发者2 小时前
征程 6 | 工具链如何支持 Matmul/Conv 双 int16 输入量化?
人工智能·算法·自动驾驶
甄心爱学习2 小时前
数值计算-线性方程组的迭代解法
算法
stolentime2 小时前
SCP2025T2:P14254 分割(divide) 题解
算法·图论·组合计数·洛谷scp2025
Q741_1472 小时前
C++ 面试基础考点 模拟题 力扣 38. 外观数列 题解 每日一题
c++·算法·leetcode·面试·模拟