news 2026/5/1 0:07:32

Leetcode 128. 最长连续序列 JavaScript

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Leetcode 128. 最长连续序列 JavaScript
/** * @param {number[]} nums * @return {number} */varlongestConsecutive=function(nums){letidx=newSet(nums);letlen=0;for(letxofidx){if(idx.has(x-1))continue;//确保x一定是这个序列的第一个lety=x+1;while(idx.has(y))y++;len=Math.max(len,y-x);//优化if(2*len>idx.size)break;}returnlen;}

核心思想:哈希集合

if(idx.has(x-1))continue;//核心核心核心

算法细节:for循环遍历的一定要是新的哈希集合,不能是原数组nums,否则会重复查找非常多次

API 调用: Set


语法细节: size和length

数据类型属性说明
Arraylength元素数量
Setsize元素数量
Mapsize键值对数量
Stringlength字符数量

时间复杂度分析: O(N)
虽然这是一个"循环嵌套",但其实这是线性查找,因为每个元素只被访问一次,"核心"的那一步时间复杂度是O(1),这最关键的,确保不会重复查找

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/25 7:10:46

58、池化层介绍

池化层介绍最大值池化平均值池化池化不会改变通道数(池化后不会对各个通道进行相加操作),只有卷积核个数会改变通道数nn.Maxpool2dnn.Avgpool2d最大池化更常用

作者头像 李华
网站建设 2026/4/26 3:31:50

数据库连接池(Java)

import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; import java.util.concurrent.LinkedBlockingQueue; import java.util.concurrent.TimeUnit;/*** 简易数据库连接池实现* 核心功能:* 1. 初始化固定数量的连接* 2. 连接…

作者头像 李华
网站建设 2026/4/27 11:33:52

微信小程序uniapp-vue英语在线学习系统每日签到打卡

文章目录具体实现截图主要技术与实现手段系统设计与实现的思路系统设计方法java类核心代码部分展示结论源码lw获取/同行可拿货,招校园代理 :文章底部获取博主联系方式!具体实现截图 本系统(程序源码数据库调试部署讲解)带文档1万…

作者头像 李华
网站建设 2026/4/28 1:38:47

1.1 一维数组(markdown版)

一维数组简介 数组是最简单的,也最基础的数据结构。数组是一个有序的数据集合,用索引(或者叫下标)访问数据。在大多数编程语言,比如C/C/java/javascript中,数组的索引都是以0开始。它的逻辑结构是一段连续…

作者头像 李华
网站建设 2026/4/17 16:06:42

在 Cloud SQL for PostgreSQL 上启用 pgvector

本文档记录了如何在 Google Cloud SQL (PostgreSQL 13) 实例上启用 pgvector 扩展,以支持向量数据库功能(如向量存储和相似度搜索)。 1. 简介 pgvector 是 PostgreSQL 的一个开源扩展,用于存储和查询向量嵌入(Vector E…

作者头像 李华
网站建设 2026/4/26 15:03:56

Cordova与OpenHarmony营养管理系统

欢迎大家加入开源鸿蒙跨平台开发者社区,一起共建开源鸿蒙跨平台生态。 营养管理的重要性 营养管理是健康运动的重要组成部分。通过Cordova框架与OpenHarmony的数据管理能力,我们可以构建一个完整的营养管理系统。本文将介绍如何实现这一功能。 食物数据…

作者头像 李华