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];
    }
};
相关推荐
漫随流水17 分钟前
leetcode回溯算法(78.子集)
数据结构·算法·leetcode·回溯算法
斐夷所非27 分钟前
C++ 继承、多态与类型转换 | 函数重载 / 隐藏 / 覆盖实现与基派生类指针转换
c++
全栈游侠34 分钟前
数据结构 - 链表
数据结构·链表
一生只为赢38 分钟前
通俗易懂:ARM指令的寻址方式(三)
运维·arm开发·数据结构·嵌入式实时数据库
IT猿手39 分钟前
六种智能优化算法(NOA、MA、PSO、GA、ZOA、SWO)求解23个基准测试函数(含参考文献及MATLAB代码)
开发语言·算法·matlab·无人机·无人机路径规划·最新多目标优化算法
We་ct44 分钟前
LeetCode 151. 反转字符串中的单词:两种解法深度剖析
前端·算法·leetcode·typescript
gfdhy1 小时前
【C++实战】多态版商品库存管理系统:从设计到实现,吃透面向对象核心
开发语言·数据库·c++·microsoft·毕业设计·毕设
芜湖xin1 小时前
【题解-Acwing】AcWing 5579. 增加模数(TLE)
算法·快速幂
清酒难咽1 小时前
算法案例之分治法
c++·经验分享·算法
小屁猪qAq1 小时前
强符号和弱符号及应用场景
c++·弱符号·链接·编译