LeetCode.81-每日一题-搜索旋转排序数组 II
本文最后更新于:2023年11月8日 中午
LeetCode81 搜索旋转排序数组 II
本题分析到的最坏情况下的最好复杂度的解法均为线性解法,所以就拿线性解法做了,时间复杂度是O(n)
C++代码
1 |
|
AcWing22 旋转数组的最小数字
除了最后水平的一段(黑色水平那段)之外,其余部分满足二分性质:竖直虚线左边的数满足nums[i]≥nums[0];而竖直虚线右边的数不满足这个条件。
分界点就是整个数组的最小值。
所以我们先将最后水平的一段删除即可。
这里还有一段y总的特殊情况的tip
另外,不要忘记处理数组完全单调的特殊情况:
当我们删除最后水平的一段之后,如果剩下的最后一个数大于等于第一个数,则说明数组完全单调。
C++代码
1 |
|
LeetCode.81-每日一题-搜索旋转排序数组 II
https://www.0error.net/2021/04/2cf5b000.html