128. 最长连续序列

https://leetcode-cn.com/problems/longest-consecutive-sequence/
给定一个未排序的整数数组,找出最长连续序列的长度。
要求算法的时间复杂度为 O(n)。

  1. 用哈希表存储每个端点值对应连续区间的长度
  2. 若数已在哈希表中:跳过不做处理
  3. 若是新数加入:
    取出其左右相邻数已有的连续区间长度
    计算当前数的区间长度
    根据当前区间长度更新最大长度的值
    更新区间两端点的长度值
class Solution {
public:
    int longestConsecutive(vector& nums) {
        unordered_map ma;
        int ans=0;
        for(int i=0;i

你可能感兴趣的:(128. 最长连续序列)