网易首页 > 网易号 > 正文 申请入驻

旋转数组搜索:至少有一半总是有序的

0
分享至

  在技术面试中,旋转排序数组的搜索是一道经典题目。给定一个原本升序排列、但经过旋转的数组,要求在对数时间内找出目标元素的位置。如果不存在,返回-1。

  最直接的思路是暴力扫描:从左到右逐个对比,找到目标就返回下标。代码实现只需要一个for循环,时间复杂度O(N),空间复杂度O(1)。但这种方法完全忽略了数组本身的排序特性,面试官通常会追问更优解。

  标准的二分查找要求数组完全有序,而旋转数组整体并不满足这个条件。以[4,5,6,7,0,1,2]为例,4到7是升序,0到2也是升序,但7到0出现了断崖。直接套用普通二分查找会得出错误结果。

  关键观察在于:对于任意一个中间位置,至少有一半区间是严格有序的。用上面的例子,取中间元素7,左侧[4,5,6,7]是排序好的;取1时,左侧[0,1]同样有序。这个性质每轮迭代都成立。

  算法流程分成两步走。先判断哪一半有序:如果左端点值小于等于中间值,说明左半有序;否则右半有序。然后在有序的那一半里检查目标值是否落在范围内——左半的条件是左端点≤目标<中间值,右半的条件是中间值<目标≤右端点。落在范围内就收缩到这一半继续搜索,否则收缩到另一半。

  具体执行一遍:数组[4,5,6,7,0,1,2],目标0。第一轮中间值是7,左半[4-7]有序但0不在其间,转向右半。第二轮中间值1,左半[0,1]有序且0在其中,收缩到左半。第三轮中间值恰好是0,返回下标4。

  时间复杂度O(log N),每一轮能稳定排除一半的搜索空间。空间复杂度O(1),只用了几个指针变量。这个解法在面试中的一句话总结是:旋转排序数组中至少有一半始终有序,找准这一半并判断目标是否在其中,即可实现对数级别的裁剪。

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
小马云要当爸爸了,女友自曝怀孕两个月:小马云首场直播打赏29万

小马云要当爸爸了,女友自曝怀孕两个月:小马云首场直播打赏29万

汉史趣闻
2026-06-19 19:46:44
徐向前是公认的好说话,建国后却与2位将军坚决不来往,有何矛盾

徐向前是公认的好说话,建国后却与2位将军坚决不来往,有何矛盾

史之铭
2026-06-22 01:49:02
何超欣现身皇家赛马会,一套香奈儿却显得精致土,脸看着也很奇怪

何超欣现身皇家赛马会,一套香奈儿却显得精致土,脸看着也很奇怪

可乐谈情感
2026-06-22 01:29:03
央视曝光!多款水果跌落神坛,滥用甜味剂8000倍甜度、违规防腐剂

央视曝光!多款水果跌落神坛,滥用甜味剂8000倍甜度、违规防腐剂

陈博世财经
2026-06-21 16:42:08
加价三十万都抢不到的丰田酷路泽,现在跌到七十万居然卖不动了

加价三十万都抢不到的丰田酷路泽,现在跌到七十万居然卖不动了

李子橱
2026-06-21 17:00:06
端午最大受害者出现了!一北漂小伙一次吃光妈妈寄的粽子,吃撑了

端午最大受害者出现了!一北漂小伙一次吃光妈妈寄的粽子,吃撑了

火山詩话
2026-06-21 17:59:57
嫁李铁不后悔!张泉灵卸下伪装,自曝在央视受排挤,她没法说谎

嫁李铁不后悔!张泉灵卸下伪装,自曝在央视受排挤,她没法说谎

麦芽是个小趴菜
2026-06-21 10:37:56
就不是死亡之组,荷兰、日本携手出线,谁会对上极致防守的摩洛哥

就不是死亡之组,荷兰、日本携手出线,谁会对上极致防守的摩洛哥

王稱吃吃喝喝
2026-06-21 14:18:31
金价一夜大变天!2026年6月21日,国内各大金店品牌黄金、足金最新价格

金价一夜大变天!2026年6月21日,国内各大金店品牌黄金、足金最新价格

说故事的阿袭
2026-06-21 14:40:06
当年1300万人无班可上的美国,最终是谁拯救了就业?

当年1300万人无班可上的美国,最终是谁拯救了就业?

寰球经纬所
2026-06-19 16:34:24
12345热线失衡:恶意投诉零成本,基层干部困在无尽内耗

12345热线失衡:恶意投诉零成本,基层干部困在无尽内耗

细说职场
2026-06-21 18:12:58
国足望尘莫及?武磊:日本队非常强大!几乎没有弱点 得分点很多

国足望尘莫及?武磊:日本队非常强大!几乎没有弱点 得分点很多

念洲
2026-06-22 08:49:32
新华社记者致监管部门的公开信:只为那些体内检出甲酰胺的孩子

新华社记者致监管部门的公开信:只为那些体内检出甲酰胺的孩子

记录刘杰
2026-06-21 21:18:04
丈母娘把热茶泼我脸上,全家哄笑,隔天她两个儿子一块被辞退

丈母娘把热茶泼我脸上,全家哄笑,隔天她两个儿子一块被辞退

千秋文化
2026-06-21 20:22:31
真让他们冲进去了?菲律宾战舰飞机强闯黄岩岛,后称任务圆满结束

真让他们冲进去了?菲律宾战舰飞机强闯黄岩岛,后称任务圆满结束

阿龙聊军事
2026-06-21 19:58:13
中国海军最大软肋:军舰一旦打光导弹,真的只能沦为海上的废铁?

中国海军最大软肋:军舰一旦打光导弹,真的只能沦为海上的废铁?

喜你成疾药石无医
2026-06-21 22:35:00
1457万枚烂在银行!武夷山纪念币创下近十年最尴尬纪录

1457万枚烂在银行!武夷山纪念币创下近十年最尴尬纪录

老孟谈钱
2026-06-19 03:17:17
高市没想到,中国竟给了日本6吨金属镓:松绳子是为更好地立规矩

高市没想到,中国竟给了日本6吨金属镓:松绳子是为更好地立规矩

起喜电影
2026-06-22 09:15:44
世界杯打到一半要回家陪老婆?多库的决定,让整个比利时吵翻了

世界杯打到一半要回家陪老婆?多库的决定,让整个比利时吵翻了

TVB的四小花
2026-06-21 11:12:57
离谱到家,日本踢世界杯比赛,中国观众超过了日本观众数倍

离谱到家,日本踢世界杯比赛,中国观众超过了日本观众数倍

体坛狗哥
2026-06-21 18:36:47
2026-06-22 10:47:00
灰度测试中
灰度测试中
生活正在重构,目前还在灰度测试阶段,暂不全量发布。
258文章数 39关注度
往期回顾 全部

头条要闻

日本知名教授:切断和中国的关系 日本没有未来

头条要闻

日本知名教授:切断和中国的关系 日本没有未来

体育要闻

18岁斩世界杯首球!亚马尔连创5大纪录

娱乐要闻

韩红帮冯小刚宣传,结果翻车了…

财经要闻

“床垫界的特斯拉”破产了

科技要闻

SpaceX 74天闪电IPO,OpenAI能照搬吗?

汽车要闻

全面提升 全新理想L8 livis将家用舒适再进化

态度原创

房产
亲子
本地
艺术
公开课

房产要闻

商业清零式退潮,大量住宅登场!三亚又要大规模调规!

亲子要闻

太不要脸了

本地新闻

龙腾资江 韵动邵阳

艺术要闻

310米!欧盟第一高楼,坐落于波兰

公开课

李玫瑾:为什么性格比能力更重要?

无障碍浏览 进入关怀版