尧图网站建设 尧图网络
  • 首页
  • 关于我们
  • 服务项目
  • 案例展示
  • 建站流程
  • 资讯中心
  • 联系我们
首页/资讯中心/详情

【哈希】LC 128.最长连续序列

【哈希】LC 128.最长连续序列
📅 发布时间:2026/7/18 21:08:43

文章目录

  • 前言
  • 一、题目
    • 1、原题链接
    • 2、题目描述
  • 二、个人思路整理
    • 1、思路分析
    • 2、解题代码
  • 三、知识风暴

前言

本专栏文章为《LeetCode 热题 100》的刷题题解,相关内容如有侵权,立即删除。

一、题目

1、原题链接

128.最长连续序列

2、题目描述

二、个人思路整理

1、思路分析

思路参考最长连续序列、两个关键优化,O(n) 时间复杂度(Python/Java/C++/C/Go/JS/Rust)、https://leetcode.cn/problems/longest-consecutive-sequence/solutions/276931/zui-chang-lian-xu-xu-lie-by-leetcode-solution/comments/2283513/

  1. 此题复杂度限制在O(n),因此不能使用排序(快排复杂度为O(nlogn)超出题目复杂度要求);
  2. 所以需要换一种思路,核心就是快速判断数组中的每个元素是否可能是某一个连续序列的起点(开头)元素(快速判断想到利用哈希表),如果可能是则进行遍历,查找后续递增元素是否存在;若一定不是,则直接跳过后续步骤,进行数组中下一个元素的判断。
  3. 如何进行判断数组中的元素是否可能是最长连续序列的开头元素呢?
  • 先说不可能的情况:当遍历到的元素值为i但数组中存在i-1,那么说明当前元素就没有必要进行后续递增序列的计算(因为以i-1开头的序列一定要比以i开头的序列要长,不论这个以i-1开头的连续序列长度是先与以i开头的连续序列长度计算的还是迟于它,最终当前以i开头计算出的连续序列的最大长度都会被更新,所以这种情况没有必要再对以i开头的连续序列长度的计算);
  • 排除上述不可能情况,其他情况都有可能,咱们需要依次计算以其他元素开头的连续序列的长度,然后最终得到最大的长度。
  1. 由于原数组可能存在重复元素,所以我们需要去重后再进行计算,以减低算法复杂度。

2、解题代码

classSolution{public:intlongestConsecutive(vector<int>&nums){unordered_set<int>s;intmax_len=0;//记录全局最大长度for(autonum:nums){s.insert(num);}for(autoi:s){if(s.count(i-1))continue;//如果i-1存在,说明i不是起点,跳过计算//如果找到一个起点,计算以这个起点开始的序列长度inttmp=i+1;intcur_len=1;//依次在哈希表中查找递增的元素是否存在,存在则当前序列长度加一同时继续判断下一个递增元素while(s.count(tmp)){cur_len++;tmp++;}max_len=max(max_len,cur_len);}returnmax_len;}};

三、知识风暴

  • 空间换时间:利用哈希表O(1)的查询效率,代替暴力循环去匹配的过程

相关新闻

  • 预防医学走进企业:2026年员工健康管理趋势洞察
  • 纪实感与安全感才是婚礼跟拍的关键
  • Power BI | 五步设好报表数据权限

最新新闻

  • 贪心算法在Karate Competition问题中的应用与优化
  • Android NFC标签ID读取实现与优化指南
  • 如何永久保存微信聊天记录:打造个人数字记忆宝库的终极指南
  • 百达翡丽中国官方售后服务中心|最新地址及服务热线权威信息公告(2026年7月最新) - 百达翡丽服务中心
  • 2026广州卫生间、阳台、地下室与屋顶防水维修指南,三类服务定位如何比较 - 盛隆防水
  • Serverless不够用?混合架构实现确定性执行

日新闻

  • SaaS软件行业GEO实践:AI搜索时代的品牌可见性与获客新路径
  • 什么是PCTFE?医药高端包装的“防潮王牌“材料
  • 【JVM调优实战】16-可视化利器-JConsole-VisualVM-JMC

周新闻

  • SaaS软件行业GEO实践:AI搜索时代的品牌可见性与获客新路径
  • 什么是PCTFE?医药高端包装的“防潮王牌“材料
  • 【JVM调优实战】16-可视化利器-JConsole-VisualVM-JMC

月新闻

  • 2026年6月公司网站搭建最新热门渠道测评:四大低成本/零代码平台对比+避坑
  • 【Linux】Linux arm 编译QT程序,出现expected “}“报错
  • 【MATLAB例程】四基站二维AOA定位与距离辅助增强对比仿真。基于角度观测和测距修正的固定目标平面定位精度分析

关于尧图

  • 公司简介
  • 团队介绍
  • 企业文化
  • 荣誉资质

服务项目

  • 定制开发
  • 电商建站
  • UI 设计
  • 运维服务

快速链接

  • 案例展示
  • 建站流程
  • 常见问题
  • 资讯中心

联系方式

  • 📍北京市朝阳区互联网产业园 A 座 10 层
  • 📞400-888-8888
  • ✉️contact@rkmt.cn
  • 🕐周一至周日 9:00-21:00

© 2024 北京尧图网络科技有限公司 版权所有 | 京 ICP 备 XXXXXXXX 号