Day25力扣打卡

打卡记录

寻找旋转排序数组中的最小值(二分)

链接

由于是旋转排序数组,所以整个数组有两部分是递增的,选取右侧最后元素,即可将整个数组分为大于该元素和小于该元素,碰头地段即为最小值。

cpp 复制代码
class Solution {
public:
    int findMin(vector<int>& nums) {
        int n = nums.size();
        int l = 0, r = n - 1;
        while (l < r) {
            int mid = l + (r - l) / 2;
            if (nums[mid] <= nums[n - 1]) r = mid;
            else l = mid + 1;
        }
        return nums[l];
    }
};
相关推荐
ULTRA??1 小时前
插入排序算法实现(二分查找搜索版本)
c++·算法
Elias不吃糖1 小时前
LeetCode 71:简化 Unix 路径(Simplify Path)——栈 / vector
算法·leetcode·
sheeta19981 小时前
LeetCode 每日一题笔记 日期:2025.12.15 题目:2110.股票平滑下跌阶段的数目
笔记·算法·leetcode
郭涤生8 小时前
布隆过滤器
c++
智者知已应修善业8 小时前
【求中位数】2024-1-23
c语言·c++·经验分享·笔记·算法
9ilk8 小时前
【C++】--- 特殊类设计
开发语言·c++·后端
地平线开发者9 小时前
PTQ 量化数值范围与优化
算法·自动驾驶
sali-tec9 小时前
C# 基于halcon的视觉工作流-章68 深度学习-对象检测
开发语言·算法·计算机视觉·重构·c#
测试人社区-小明9 小时前
智能弹性伸缩算法在测试环境中的实践与验证
人工智能·测试工具·算法·机器学习·金融·机器人·量子计算
罗西的思考10 小时前
【Agent】MemOS 源码笔记---(5)---记忆分类
人工智能·深度学习·算法