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;
    }
相关推荐
ch.ju12 小时前
Java程序设计(第3版)第二章——java的数据类型:字符 char
java
尘世壹俗人12 小时前
idea提交git版本由于中文文件名卡死不动
java·git·intellij-idea
学习永无止境@12 小时前
Sobel边缘检测的MATLAB实现
图像处理·opencv·算法·计算机视觉·fpga开发
深挖派12 小时前
IntelliJ IDEA 2026.1 安装配置与高效开发环境搭建 (保姆级图文教程)
java·ide·intellij-idea
c++逐梦人12 小时前
记忆化搜索(DFS)
算法·深度优先
阿Y加油吧12 小时前
二分查找进阶:搜索二维矩阵 & 查找元素首尾位置 深度解析
线性代数·算法·矩阵
起个名特麻烦12 小时前
SpringBoot全局配置LocalDate/LocalTime/LocalDateTime的序列化和反序列化
java·spring boot·后端
SEO-狼术12 小时前
Visualize Org Charts and Decision Trees in WinForms
算法·决策树·机器学习
UltraLAB-F12 小时前
GPU显存不足时的分配策略:渲染与仿真的显存争夺战解决方案
图像处理·算法·3d·ai·硬件架构
高斯林.神犇12 小时前
四、依赖注入.spring
java·后端·spring