当前位置: 首页 > news >正文

LeetCode Hot 100(3.最长连续序列)

3.最长连续序列

题目

给定一个未排序的整数数组nums,找出数字连续的最长序列(不要求序列元素在原数组中连续)的长度。请你设计并实现时间复杂度为O(n)的算法解决此问题。

示例 1:

输入:nums = [100,4,200,1,3,2]输出:4解释:最长数字连续序列是 [1, 2, 3, 4]。它的长度为 4。

示例 2:

输入:nums = [0,3,7,2,5,8,4,6,0,1]输出:9

示例 3:

输入:nums = [1,0,1,2]输出:3

解法:利用num_set去重

代码

class Solution { public: int longestConsecutive(vector<int>& nums) { unordered_set<int> num_set(nums.begin(),nums.end()); vector<int> begin_num; for(int num:num_set){ if(num_set.count(num-1)==0&&num_set.count(num+1)!=0){ begin_num.emplace_back(num); } } int len; if(nums.empty()){len=0;} else{len=1;} for(int num:begin_num){ int len1=1; while(num_set.count(num+1)){ len1++; num++; } if(len1>len){len=len1;} } return len; } };

代码在空间和逻辑上可以改进

  1. 省去begin_num:无需额外数组存起点。遍历num_set时,确认是起点后直接计算长度并更新最大值即可。
  2. 简化判断:无需判断num + 1是否存在,孤立点长度为 1 不影响结果。
  3. 省略特判:将最大长度初始值设为0,用max更新,空数组自然返回0,无需特判nums.empty()

改进后代码

class Solution { public: int longestConsecutive(vector<int>& nums) { unordered_set<int> num_set(nums.begin(),nums.end()); int max_len=0; for(int num:num_set){ if(num_set.count(num-1)==0){ int cnum = num; int len1=1; while(num_set.count(cnum+1)){ len1++; cnum++; } max_len =max(max_len,len1); } } return max_len; } };
http://www.jsqmd.com/news/1248420/

相关文章:

  • AIGC内容优化:千笔智能体降AI率技术与应用
  • AI操作系统:从意图理解到能力调度的技术演进
  • 成都新旧金回收市场大测评:投资金条、婚嫁首饰、碎金统一回收标准 - 奢侈品回收评测
  • 2026年7月佛山万国售后全网正式声明 - 万国中国服务中心
  • 2026年互联网大厂AI岗位需求与技能解析
  • TI评估模块使用指南:研发边界、安全规范与合规实践
  • 聊城黄金回收哪家靠谱?2026(东昌府区)润富黄金回收口碑老店实测推荐 - 观金堂黄金回收
  • 石家庄金条,K金,铂金,钯金,钻戒,白银,黄金回收避坑指南!这六家首饰店覆盖全市,上门回收当场打款 - 新芸鼎珠宝首饰
  • 无尘擦拭纸核心性能、生产工艺与多行业应用解析
  • ​2026年数据库国产化替代回归测试方法论:自动化验证如何守住迁移质量底线
  • 2026武汉武昌名表回收|易奢福13区124店,中检资质放心卖 - 奢侈品回收探店ing
  • 106、实时影像处理延迟优化:Pipeline流水线与并行加速
  • 微电极如何制备?从原理、工艺到质控的全流程技术指南
  • 高性能音频ADC信号链设计:从PGA、AGC到数字滤波的工程实践
  • 武汉护理专业技校推荐 武汉三新高级技工学校实训设备完善对口医院就业 - 湖北找学校
  • 2026十大满意度调查问卷工具盘点:AI选型指南 - 企业数字化Rock
  • JNPF 远程请求代理
  • 2026年专业学位论文AI检测达标指南:专业学位论文AIGC超标4.8元完整处理方案
  • 2026年漯河家装难点盘点易杨装饰全案深度解析推荐 - 装企自媒体训练营辉哥
  • Unity Addressable异步加载实战:告别回调地狱,掌握三种高效写法
  • 佛山无衬纸铝箔胶带工厂怎么选:参数核验与源头工厂识别指南 - 资讯在线
  • Python毕设选题推荐:基于 Python 的计算机辅助数学教学学习系统设计 线上数学练习、模拟考试与答疑系统【附源码、mysql、文档、调试+代码讲解+全bao等】
  • 2026升级之选那曲隐形扣费再见!奢侈品回收新规重拳出击,这些持证门店全程公开透明 - 谊识预商贸
  • AI教材写作:低查重率生成方案与实践
  • AI能自动生成证书吗?AI时代的SSL证书行业会怎么变?
  • 计算机指令与机器码转换原理及实战解析
  • 西安帝舵售后服务体系全解析|官网认证地址及电话全新启用(2026年7月最新) - 帝舵官方售后服务中心
  • 2026年佛山瓷砖批发优选:大三元陶瓷引领新风尚 - GrowUME
  • 2026年北京卡地亚售后服务网络更新优化 全国60+门店地址及电话汇总 - 卡地亚中国服务中心
  • Claude Code与飞书协作平台的无缝整合方案