LeetCode【128】最长连续序列

题目:

分析:

1、最长连续序列的长度为 y-x+1,如1-4:4-1+1 = 4

2、不要被这里的On误导,不敢使用双层循环

3、只要找到最小的数值,并由此开始计算,不产生重复计算,则为On

代码:

java 复制代码
public int longestConsecutive(int[] nums) {
        Set<Integer> set = new HashSet<>();
        for (int num : nums) {
            set.add(num);
        }

        int max = 0;
        for (int i = 0; i < nums.length; i++) {
            if (!set.contains(nums[i] - 1)) {
                int y = nums[i] + 1;
                while (set.contains(y)) {
                    y++;
                }
                max = Math.max(max, y-nums[i]);
            }
        }

        return max;
    }
相关推荐
天空属于哈夫克317 小时前
企业微信外部群运营升级:API 主动推送消息开发实战
java·数据库·mysql
qq_124987075317 小时前
基于springboot的会议室预订系统设计与实现(源码+论文+部署+安装)
java·vue.js·spring boot·后端·信息可视化·毕业设计·计算机毕业设计
xuedingbue17 小时前
数据结构与顺序表:高效数据管理秘籍
数据结构·算法·链表
愿你天黑有灯下雨有伞17 小时前
java动态渲染列导出以及分页列表
java
星火开发设计17 小时前
共用体 union:节省内存的特殊数据类型
java·开发语言·数据库·c++·算法·内存
2301_8035545218 小时前
阻塞,非阻塞,同步,异步以及linux上的5种IO模型阻塞,非阻塞,信号驱动,异步,IO复用
java·服务器·网络
求梦82018 小时前
【力扣hot100题】合并两个有序链表(22)
算法·leetcode·链表
仰望星空_Star18 小时前
Java证书操作
java·开发语言
河北小博博18 小时前
分布式系统稳定性基石:熔断与限流的深度解析(附Python实战)
java·开发语言·python
岳轩子18 小时前
JVM Java 类加载机制与 ClassLoader 核心知识全总结 第二节
java·开发语言·jvm