当前位置: 首页 > news >正文

Leet Code 128-最长连续序列【Java】【哈希法】

给定一个未排序的整数数组 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
提示:

0 <= nums.length <= 105
-109 <= nums[i] <= 109
Related Topics
并查集
数组
哈希表

        public int longestConsecutive(int[] nums) {// 不存在num -1 就可以作为一个序列的开头// 不存在num +1 就可以作为一个序列的结尾// 计算长度int length = 0;int maxLength = 0;HashSet<Integer> hashSet = new HashSet<Integer>();for (int num : nums) {hashSet.add(num);}for (Integer s : hashSet) {if (!hashSet.contains(s - 1)) {length = 1;while (hashSet.contains(++s)) {length++;}maxLength = Math.max(length, maxLength);}}return maxLength;}

相关文章:

Leet Code 128-最长连续序列【Java】【哈希法】

给定一个未排序的整数数组 nums &#xff0c;找出数字连续的最长序列&#xff08;不要求序列元素在原数组中连续&#xff09;的长度。 请你设计并实现时间复杂度为 O(n) 的算法解决此问题。 示例 1&#xff1a; 输入&#xff1a;nums [100,4,200,1,3,2] 输出&#xff1a;4 …...

网络协议(概念版)

通讯&#xff1a;首先要得知对方的IP地址。 最终是根据MAC地址&#xff08;网卡地址&#xff09;&#xff0c;输送数据到网卡&#xff0c;被网卡接收。 如果网卡发现数据的目标MAC地址是自己&#xff0c;就会将数据传递给上一层进行处理;如果目标MAC地址不是自己&#xff0c;…...

Pulsar官方文档学习笔记——消息机制

pulsar 基于3.x最新官方文档学习记录 概念与架构 典型的推送订阅模式。生产者发送消息&#xff0c;消费者订阅topic消费信息并回应ACK。订阅创建后&#xff0c;Pulsar会保留所有消息。仅消息被所有订阅 成功消费了才会丢弃&#xff08;可以配置消息保留机制保留一定量&#…...

PyTorch--残差网络(ResNet)在CIFAR-10数据集进行图像分类

完整代码 import torch import torch.nn as nn import torchvision import torchvision.transforms as transforms# Device configuration device torch.device(cuda if torch.cuda.is_available() else cpu)# Hyper-parameters num_epochs 80 batch_size 100 learning_rate…...

ETAS工具链自动化实战指南<一>

----自动化不仅是一种技术&#xff0c;更是一种思维方式&#xff0c;它将帮助我们在快节奏的工作环境中保持领先&#xff01; 目录 往期推荐 场景一&#xff1a;SWC 之间 port自动连接 命令示例 参数说明 场景二&#xff1a;SWC与ECU 自动映射 命令示例 参数说明 场景三&…...

疫情期间我面试了13家企业软件测试岗位,一些面试题整理

项目的测试流程 拿到需求文档后&#xff0c;写测试用例 审核测试用例 等待开发包 部署测试环境 冒烟测试&#xff08;网页架构图&#xff09; 页面初始化测试&#xff08;查看数据库中的数据内容和页面展示的内容是否一致&#xff0c;并且是否按照某些顺序排列&#xff09…...

PINCE——Linux 原生游戏内存修改器,一款替代 Cheat Engine 的强大游戏修改器,Linux 游戏玩家必备神器!

PINCE——Linux 原生游戏内存修改器&#xff0c;一款替代 Cheat Engine 的强大游戏修改器&#xff0c;Linux 游戏玩家必备神器&#xff01; PINCE 是 GNU Project Debugger(GDB) 的前端/反向工程工具&#xff0c;常用作程序调试器&#xff0c;主要用于游戏领域&#xff0c;修改…...

为IntelliJ IDEA安装插件

安装插件 插件是开发工具的扩展程序&#xff0c;通常由第三方提供&#xff0c;当安装了插件后&#xff0c;原开发工作的菜单、按钮等开发环境可能会发生变化&#xff0c;例如出现了新的菜单项&#xff0c;或出现了新的按钮&#xff0c;甚至一些全新的编码方式&#xff0c;通常…...

ES6 Promise

ES6 Promise 对象 一、概述 是异步编程的一种解决方案。 从语法上说&#xff0c;Promise 是一个对象&#xff0c;从它可以获取异步操作的消息。 Promise 状态 状态的特点 Promise 异步操作有三种状态&#xff1a;pending&#xff08;进行中&#xff09;、fulfilled&#xff08;…...

html+css 实现hover 凹陷按钮

前言:哈喽,大家好,今天给大家分享html+css 绚丽效果!并提供具体代码帮助大家深入理解,彻底掌握!创作不易,如果能帮助到大家或者给大家一些灵感和启发,欢迎收藏+关注哦 💕 目录 📚一、效果📚二、原理解析💡1.这是一个,hover时凹陷的效果。每个按钮是一个button…...

什么是负载均衡?负载均衡器如何运作?

往期文章 负载均衡器&#xff1a;LVS、Nginx、HAproxy如何选择&#xff1f; 目录 往期文章什么是负载均衡&#xff1f;为什么需要负载均衡&#xff1f;负载均衡工作原理&#xff1f;静态负载均衡算法动态负载均衡算法 参考 什么是负载均衡&#xff1f; 负载均衡是一种网络技术…...

(Arxiv-2023)潜在一致性模型:通过少步推理合成高分辨率图像

潜在一致性模型&#xff1a;通过少步推理合成高分辨率图像 Paper Title: Latent Consistency Models: Synthesizing High-Resolution Images with Few-Step Inference Paper是清华发表在Arxiv 2023的工作 Paper地址 Code地址 ABSTRACT 潜在扩散模型 (LDM) 在合成高分辨率图像方…...

Unity与UE,哪种游戏引擎适合你?

PlayStation vs Xbox&#xff0c;Mario vs Sonic&#xff0c;Unreal vs Unity&#xff1f;无论是游戏主机、角色还是游戏引擎&#xff0c;人们总是热衷于捍卫他们在游戏行业中的偏爱。 专注于游戏引擎&#xff0c;Unity和Unreal Engine&#xff08;简称UE4&#xff09;是目前市…...

这五本大模型书籍,把大模型讲的非常详细,收藏我这一篇就够了

当然可以。在当前的大模型时代&#xff0c;随着自然语言处理&#xff08;NLP&#xff09;技术的迅速发展&#xff0c;出现了许多优秀的书籍来帮助读者理解这些复杂的技术。以下是几本值得推荐的大模型书籍&#xff0c;它们涵盖了从基础理论到高级实践的内容&#xff0c;可以帮助…...

伊朗通过 ChatGPT 试图影响美国大选, OpenAI 封禁多个账户|TodayAI

OpenAI 近日宣布&#xff0c;他们已经封禁了一系列与伊朗影响行动有关的 ChatGPT 账户&#xff0c;这些账户涉嫌利用该 AI 工具生成并传播与美国总统选举、以色列 – 哈马斯战争以及奥运会等相关的内容。 OpenAI 表示&#xff0c;这些账户与一个名为 “Storm-2035” 的秘密伊朗…...

windows系统如何走后面之windows系统隐藏账户

系统隐藏账户是一种最为简单有效的权限维持方式&#xff0c;其做法就是让攻击者创建一个新的具有管理员权限的隐藏账户&#xff0c;因为是隐藏账户&#xff0c;所以防守方是无法通过控制面板或命令行看到这个账户的。 自然我们需要一些前提条件&#xff0c;比如说有一个网站&am…...

Elasticsearch(ES)(版本7.x)数据更新后刷新策略RefreshPolicy

Elasticsearch(ES)(版本7.x)数据更新后刷新策略RefreshPolicy 介绍 ES数据写入后&#xff0c;默认1s后才会被搜索到&#xff08;refresh_interval为1&#xff09;&#xff1b; 这样可能是考虑到性能问题&#xff0c;毕竟实时IO 消耗较多资源 造成的问题 例如一个索引现在有…...

【运维】从一个git库迁移到另一个库

工作目录&#xff1a; /home/java/hosts 10.60.100.194 脚本 hosts / hostsShell GitLab (gbcom.com.cn) 核心代码...

and design vue表格列宽度拖拽,vue-draggable-resizable插件使用

and design vue2版的table表格不能拖拽列的宽度&#xff0c;通过vue-draggable-resizable插件实现 我用的是and design 1.7.8的版本&#xff0c;先下插件 yarn add vue-draggable-resizable2.1.0我这版本的and design用最新3.0.0以上的插件会有问题&#xff0c;实现不了效果&a…...

使用hexo搭建个人博客

很早之前使用hexo和github建了个人博客。搭建的流程一直没有梳理&#xff0c;中间换过几次机器&#xff0c;每次都得重新配置一遍&#xff0c;需要重新学些。最近电脑坏了&#xff0c;原始的数据没有导出来&#xff0c;先把以前文章写个文件占个位置&#xff0c;后面慢慢补吧&a…...

终极指南:使用SMU Debug Tool释放AMD Ryzen处理器的隐藏性能

终极指南&#xff1a;使用SMU Debug Tool释放AMD Ryzen处理器的隐藏性能 【免费下载链接】SMUDebugTool A dedicated tool to help write/read various parameters of Ryzen-based systems, such as manual overclock, SMU, PCI, CPUID, MSR and Power Table. 项目地址: http…...

HarmonyOS 6学习:Canvas实现圆角矩形进度条

在HarmonyOS应用开发中&#xff0c;进度条是展示任务进度、加载状态和数据可视化的重要组件。虽然系统提供了Progress组件&#xff0c;但在需要高度定制化、复杂视觉效果或特殊交互的场景下&#xff0c;开发者常常面临以下困境&#xff1a;样式限制&#xff1a;Progress组件难以…...

Vue生命周期的灵魂拷问:created vs mounted,数据请求到底该在哪?

Vue生命周期的灵魂拷问&#xff1a;created vs mounted&#xff0c;数据请求到底该在哪&#xff1f; 在Vue.js的世界里&#xff0c;生命周期钩子是赋予开发者“上帝视角”的魔法&#xff0c;让我们能在组件从诞生到消亡的整个过程中&#xff0c;在精确的时机注入自定义逻辑。其…...

3步掌握本地语音合成:tts-vue离线语音包配置终极指南

3步掌握本地语音合成&#xff1a;tts-vue离线语音包配置终极指南 【免费下载链接】tts-vue &#x1f3a4; 微软语音合成工具&#xff0c;使用 Electron Vue ElementPlus Vite 构建。 项目地址: https://gitcode.com/gh_mirrors/tt/tts-vue 还在为网络不稳定导致的语音…...

RexUniNLU零样本实战:智能家居指令解析,5分钟快速上手

RexUniNLU零样本实战&#xff1a;智能家居指令解析&#xff0c;5分钟快速上手 1. 为什么选择RexUniNLU处理智能家居指令&#xff1f; 1.1 智能家居场景的特殊挑战 智能家居领域面临两大核心难题&#xff1a;指令多样性和用户表达随意性。同一操作可能有数十种表达方式&#…...

开源抢票工具成功率提升指南:从配置到实战的全方位优化

开源抢票工具成功率提升指南&#xff1a;从配置到实战的全方位优化 【免费下载链接】damaihelper 支持大麦网&#xff0c;淘票票、缤玩岛等多个平台&#xff0c;演唱会演出抢票脚本 项目地址: https://gitcode.com/gh_mirrors/dam/damaihelper 你是否曾在开票瞬间眼睁睁…...

CA6140车床杠杆831009钻M6孔夹具设计全套带图

CA6140车床作为机械加工领域的经典设备&#xff0c;其杠杆零件&#xff08;编号831009&#xff09;的加工精度直接影响整机性能。针对该零件M6螺纹孔的加工需求&#xff0c;专用夹具的设计需兼顾定位稳定性、操作便捷性与加工经济性。通过分析零件结构可知&#xff0c;杠杆两端…...

三步掌握创意编程:p5.js Web Editor零门槛入门指南

三步掌握创意编程&#xff1a;p5.js Web Editor零门槛入门指南 【免费下载链接】p5.js-web-editor The p5.js Editor is a website for creating p5.js sketches, with a focus on making coding accessible and inclusive for artists, designers, educators, beginners, and …...

DVWA SQL 注入:两种查表字段 Payload 结果差异详解

一、问题引入在 DVWA Medium 级别 SQL 注入实验中&#xff0c;我们通过 Burp Suite 抓包改包&#xff0c;对users表字段进行查询时&#xff0c;会遇到两种看似不同的执行结果&#xff1a;图 1&#xff1a;逐行展示users表的每一个字段名图 2&#xff1a;一行展示user表的所有字…...

Mi-Create:让小米穿戴设备拥有专属表盘的3步可视化设计法

Mi-Create&#xff1a;让小米穿戴设备拥有专属表盘的3步可视化设计法 【免费下载链接】Mi-Create Unofficial watchface creator for Xiaomi wearables ~2021 and above 项目地址: https://gitcode.com/gh_mirrors/mi/Mi-Create 你是否厌倦了小米手表上那些千篇一律的官…...