【哈希】LC 128.最长连续序列
文章目录前言一、题目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/此题复杂度限制在O(n)因此不能使用排序快排复杂度为O(nlogn)超出题目复杂度要求所以需要换一种思路核心就是快速判断数组中的每个元素是否可能是某一个连续序列的起点开头元素快速判断想到利用哈希表如果可能是则进行遍历查找后续递增元素是否存在若一定不是则直接跳过后续步骤进行数组中下一个元素的判断。如何进行判断数组中的元素是否可能是最长连续序列的开头元素呢先说不可能的情况当遍历到的元素值为i但数组中存在i-1那么说明当前元素就没有必要进行后续递增序列的计算因为以i-1开头的序列一定要比以i开头的序列要长不论这个以i-1开头的连续序列长度是先与以i开头的连续序列长度计算的还是迟于它最终当前以i开头计算出的连续序列的最大长度都会被更新所以这种情况没有必要再对以i开头的连续序列长度的计算排除上述不可能情况其他情况都有可能咱们需要依次计算以其他元素开头的连续序列的长度然后最终得到最大的长度。由于原数组可能存在重复元素所以我们需要去重后再进行计算以减低算法复杂度。2、解题代码classSolution{public:intlongestConsecutive(vectorintnums){unordered_setints;intmax_len0;//记录全局最大长度for(autonum:nums){s.insert(num);}for(autoi:s){if(s.count(i-1))continue;//如果i-1存在说明i不是起点跳过计算//如果找到一个起点计算以这个起点开始的序列长度inttmpi1;intcur_len1;//依次在哈希表中查找递增的元素是否存在存在则当前序列长度加一同时继续判断下一个递增元素while(s.count(tmp)){cur_len;tmp;}max_lenmax(max_len,cur_len);}returnmax_len;}};三、知识风暴空间换时间利用哈希表O(1)的查询效率代替暴力循环去匹配的过程

相关新闻

高效构建黑苹果系统:OpenCore Configurator专业配置实战指南

高效构建黑苹果系统:OpenCore Configurator专业配置实战指南

高效构建黑苹果系统:OpenCore Configurator专业配置实战指南 【免费下载链接】OpenCore-Configurator A configurator for the OpenCore Bootloader 项目地址: https://gitcode.com/gh_mirrors/op/OpenCore-Configurator 在非苹果硬件上运行macOS系统&#x…

2026/7/27 18:46:48 阅读更多 →
AI回答采集:如何从原始文本中提取品牌提及和推荐

AI回答采集:如何从原始文本中提取品牌提及和推荐

业务背景与实际约束 在AI搜索和智能问答场景中,品牌方需要了解自己的品牌在AI回答中如何被提及和推荐。然而,AI生成的文本结构多变,品牌可能以全称、简称、别名出现,推荐信号词(如“推荐”“选择”“值得考虑”&#x…

2026/7/28 21:06:07 阅读更多 →
测试方法和测试级别之间的区别

测试方法和测试级别之间的区别

测试级别 (Testing Levels) 就像是盖楼的楼层,回答了“在哪个阶段测”的问题,决定了测试的范围和对象。 测试方法 (Testing Methods) 则像是检查的工具,回答了“用什么方式测”的问题,决定了测试的视角和手段。 一个是在不同建设阶段进行的检查(级别),另一个是检查时使…

2026/7/29 22:48:22 阅读更多 →

最新新闻

单相桥式全控整流电路Matlab Simulink仿真建模与深度分析

单相桥式全控整流电路Matlab Simulink仿真建模与深度分析

1. 项目概述:从理论到实践的整流电路仿真在电力电子领域,单相桥式全控整流电路是一个绕不开的经典拓扑。无论是作为教材中的标准案例,还是工业应用中AC-DC变换的基础单元,理解它的工作原理和动态特性都至关重要。然而,…

2026/7/30 3:46:28 阅读更多 →
Airoha 157x SDK构建失败排查:从CMake配置错误到项目成功编译

Airoha 157x SDK构建失败排查:从CMake配置错误到项目成功编译

1. 项目构建失败的根源:从“找不到CMake配置”说起最近在折腾Airoha 157x的SDK,准备编译个简单的Demo程序,结果上来就给我当头一棒。命令行里赫然躺着一行刺眼的错误::-1: error: cmake project configuration failed. no cmake c…

2026/7/30 3:46:28 阅读更多 →
PID学习之路

PID学习之路

7月29号 跟着江协科技的课 学完了1-3 基础代码的的编写 并且学习使用了 SerialPlot软件 第一次看见可视化的信号波形感觉挺牛逼的 旋转编码器的配置思路 可以看到RP1-4的输出引脚接到了最小系统板上的A2-5引脚 斜体样式 再查找对应的引脚复用图表可发现PA2-5 对应的是ADC1或者A…

2026/7/30 3:46:28 阅读更多 →
企业私有化镜像部署方案:镜像供应链漏洞治理的六大防线(2026)

企业私有化镜像部署方案:镜像供应链漏洞治理的六大防线(2026)

容器镜像供应链安全是企业容器化落地的核心风险点,覆盖依赖引入、制品存储、部署交付全链路的安全管控能力,是私有化镜像仓库的核心价值所在。嘉为蓝鲸CPack企业级制品管理平台,从依赖源管控、入库扫描、质量红线阻断、风险制品自动禁用、全链…

2026/7/30 3:46:28 阅读更多 →
Excel+Python+Stata三驾马车:高效构建面板数据的工程化实践

Excel+Python+Stata三驾马车:高效构建面板数据的工程化实践

1. 项目缘起:为什么我们需要“三驾马车”来构建面板数据?做实证研究或者数据分析的朋友,尤其是经管、社科领域的,对“面板数据”这个词肯定不陌生。简单说,面板数据就是跟踪同一批个体(比如公司、省份、家庭…

2026/7/30 3:46:28 阅读更多 →
C++ --红黑树

C++ --红黑树

红黑树的五大性质 每个节点是红色或黑色 根节点是黑色 所有叶子(NIL空节点)都是黑色 红色节点的两个子节点都是黑色(即不能有连续的红节点) 从任一节点到其每个叶子的所有路径都包含相同数目的黑色节点(黑色高度一…

2026/7/30 3:45:28 阅读更多 →

日新闻

Windows驱动存储终极清理工具:DriverStoreExplorer完全指南

Windows驱动存储终极清理工具:DriverStoreExplorer完全指南

Windows驱动存储终极清理工具:DriverStoreExplorer完全指南 【免费下载链接】DriverStoreExplorer Driver Store Explorer 项目地址: https://gitcode.com/gh_mirrors/dr/DriverStoreExplorer 您是否曾因Windows系统盘空间不足而烦恼?是否遇到过设…

2026/7/30 0:00:13 阅读更多 →
如何3步掌握Video Download Helper:网页视频下载的完整实战指南

如何3步掌握Video Download Helper:网页视频下载的完整实战指南

如何3步掌握Video Download Helper:网页视频下载的完整实战指南 【免费下载链接】VideoDownloadHelper Chrome Extension to Help Download Video for Some Video Sites. 项目地址: https://gitcode.com/gh_mirrors/vi/VideoDownloadHelper 你是否曾经在浏览…

2026/7/30 0:00:13 阅读更多 →
“双减”后首个AI备课压力测试报告:覆盖32所中小学的176节AI辅助课,暴露4大隐性增负节点

“双减”后首个AI备课压力测试报告:覆盖32所中小学的176节AI辅助课,暴露4大隐性增负节点

更多请点击: https://intelliparadigm.com 第一章:AI 教师备课辅助 AI 教师备课辅助系统正逐步成为教育数字化转型的核心支撑工具,它并非替代教师,而是通过语义理解、知识图谱与多模态生成能力,将教师从重复性劳动中解…

2026/7/30 0:00:13 阅读更多 →

周新闻

深度学习道路桥梁裂缝检测系统 道路桥梁裂缝检测数据集 道路桥梁病害识别检测数据集

深度学习道路桥梁裂缝检测系统 道路桥梁裂缝检测数据集 道路桥梁病害识别检测数据集

深度学习道路桥梁裂缝检测系统 数据集6000张 完整源码已标注数据集训练好的模型环境配置教程程序运行说明文档,可以直接使用!系统支持图片、视频、摄像头等多种方式检测裂缝,功能强大实用。 1数据集6000张 8各类别

2026/7/29 22:18:20 阅读更多 →
深度学习YOLO模型如何训练 PUBG 绝地求生目标检测数据集

深度学习YOLO模型如何训练 PUBG 绝地求生目标检测数据集

pubg数据集 精选原图1.42万数据 1.49万标签 无任何重复、算法增强或冗余图像! pubg绝地求生目标检测数据集 1分类:e_body,14905个标签,txt格式 共计14244张图,99%为640*640尺寸图像 适合yolo目标检测、AI训练关键词&am…

2026/7/29 14:34:28 阅读更多 →
Apex英雄目标检测数据集 深度学习框架YOLO如何训练APEX数据集

Apex英雄目标检测数据集 深度学习框架YOLO如何训练APEX数据集

Apex检测数据集数据集详情检测类别: allies enemy tag图片总量:7247张训练集:5139张验证集:1425张测试集:683张标注状态:全部已标注,即拿即用数据格式:支持YOLO格式及其他格式&#…

2026/7/29 15:00:03 阅读更多 →

月新闻