日野弥生:勉強しよう

LeetCode 153 - 寻找旋转排序数组中的最小值

发表于2025年01月07日

#数组 #二分查找

通过观察发现,如果旋转到和原数组一样时,以及数组长度为1时,都满足数组头小于等于数组尾的情况,在进入二分查找之前先行判断。

二分查找时需要注意:

class Solution {
public:
    int findMin(vector<int>& nums) {
        if(nums[0]<=nums[nums.size()-1])
            return nums[0];
        int start=0,end=nums.size()-1,mid=0;
        while(start<end-1)
        {
            mid=(start+end)/2;
            if(nums[start]<nums[mid])
                start=mid;
            else
                end=mid;
        }
        return nums[end];
    }
};

フラッシュタブ:LeetCode

题目链接:https://leetcode.cn/problems/find-minimum-in-rotated-sorted-array/

上一篇

LeetCode 119 - 杨辉三角 II

下一篇

LeetCode 557 - 反转字符串中的单词 III