128. 最长连续序列

  1. 最长连续序列
    给定一个未排序的整数数组 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

cpp 复制代码
class Solution {
public:
    int longestConsecutive(vector<int>& nums) {
        unordered_set<int> numSet;
        for(auto d:nums) {
            numSet.insert(d);
        }

        int maxLen = 0;
        for(auto d: nums) {
            if(!numSet.count(d-1)) {
                int curLen = 0;
                while(numSet.count(d)) {
                    curLen++;
                    d++;
                }
                maxLen = max(maxLen, curLen);
            }
        }
        return maxLen;

    }
};
相关推荐
SelectDB技术团队几秒前
StarRocks 适合做日志分析吗?
大数据·数据结构·后端·python·doris·日志分析·starrock
随遇而安zx3 分钟前
Spring Cloud Gateway 微服务网关 设计思想与深度解析
java·spring cloud·微服务·架构
catino12 分钟前
spring-事务@Transactional
java·数据库·spring
luj_176817 分钟前
毒素驱动的生物自毁机制探析
服务器·c语言·开发语言·经验分享·算法
万年咸鱼24 分钟前
Java List 接口详解:从基础到实战
java·windows·list
Java的搬运工27 分钟前
Spring boot 事件监听
java·spring boot·spring·编程语言
一水鉴天30 分钟前
问题分类的三元组映射体系与求解方法论 20260901(千问)
人工智能·算法·机器学习
tryxr30 分钟前
Chat2Excel 项目网关服务开发
java·gateway·网关模块开发
谢亮_vipxieliang30 分钟前
ValidX vs Apache Commons Validator:功能与性能对比
java·服务器·spring boot·后端·spring cloud·apache·hibernate
breeze jiang31 分钟前
LangChain Memory 实战:用 InMemoryChatMessageHistory 管理多轮对话
前端·算法·langchain