leetcode(hot100)3

解题思路:本题用的是unordered_set,只需要集合就行 set存储的数据不能重复,将所有的数据都存储在set中,然后寻找验证它是不是开头(通过寻找num-1),然后验证它的下一个数存不存在,存在结果就加一,数字也加一,不存在就跳过。

cpp 复制代码
class Solution {
public:
    int longestConsecutive(vector<int>& nums) {
        unordered_set<int>set(nums.begin(),nums.end());
        int sum = 0;
        for(int num : set){
            if(!set.count(num-1)){
                int currentnum = num;
                int currentstack = 1;
                while(set.count(currentnum + 1)){
                    currentnum += 1;
                    currentstack += 1;
                }
                sum = max(currentstack,sum);
            }
        }
        return sum;
    }
};
相关推荐
smj2302_796826525 小时前
解决leetcode第3911题.移除子数组元素后第k小偶数
数据结构·python·算法·leetcode
_深海凉_9 小时前
LeetCode热题100-寻找两个正序数组的中位数
算法·leetcode·职场和发展
踩坑记录10 小时前
leetcode hot100 寻找两个正序数组的中位数 hard 二分查找 双指针
leetcode
ん贤12 小时前
加密算法(对称、非对称、哈希、签名...)
算法·哈希算法
superior tigre13 小时前
78 子集
算法·leetcode·深度优先·回溯
superior tigre14 小时前
739 每日温度
算法·leetcode·职场和发展
6Hzlia15 小时前
【Hot 100 刷题计划】 LeetCode 15. 三数之和 | C++ 排序+双指针
c++·算法·leetcode
AI人工智能+电脑小能手16 小时前
【大白话说Java面试题】【Java基础篇】第20题:HashMap在计算index的时候,为什么要对数组长度做减1操作
java·开发语言·数据结构·后端·面试·哈希算法·hash-index
北顾笙98016 小时前
day37-数据结构力扣
数据结构·算法·leetcode
liuyao_xianhui18 小时前
进程概念与进程状态_Linux
linux·运维·服务器·数据结构·c++·哈希算法·宽度优先