03 最长连续序列

news2025/1/17 4:04:51

最长连续序列

    • 题解 哈希(O(n))

给定一个未排序的整数数组 nums ,找出数字连续的最长序列(不要求序列元素在原数组中连续)的长度。

请你设计并实现时间复杂度为 O(n) 的算法解决此问题。

题解 哈希(O(n))

class Solution {
public:
    int longestConsecutive(vector<int>& nums) {
        int maxf = 0;
        unordered_set<int> kset;
        const int len = nums.size();
        for(auto x : nums){
            kset.insert(x);
        }
        
        for(auto num : kset){
        	int curlen = 0;
            if(kset.count(num-1)){
                continue;
            }
            curlen ++;
            int curnum = num;
            while(kset.count(++curnum)){
                curlen++;
            }
            maxf = max(maxf, curlen);
        }
        return maxf;
    }
};

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/944208.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

升级iOS17后iPhone无法连接App Store怎么办?

最近很多用户反馈&#xff0c;升级最新iOS 17系统后打开App Store提示"无法连接"&#xff0c;无法正常打开下载APP。 为什么升级后无法连接到App Store&#xff1f;可能是以下问题导致&#xff1a; 1.网络问题导致App Store无法正常打开 2.网络设置问题 3.App Sto…

微信报修系统有什么优势?怎么提升企业维修工作效率与管理水平?

随着智能化时代的到来&#xff0c;企业、事业单位的现代化设备数量和种类不断增加&#xff0c;原本繁琐的报修、填写记录、检修管理等工作得以简化。从发起报修到维修&#xff0c;以及维修之后给予评价的整个过程&#xff0c;通过手机微信报修系统均能看到&#xff0c;既省时又…

算法---二叉树中的最大路径和

题目 二叉树中的 路径 被定义为一条节点序列&#xff0c;序列中每对相邻节点之间都存在一条边。同一个节点在一条路径序列中 至多出现一次 。该路径 至少包含一个 节点&#xff0c;且不一定经过根节点。 路径和 是路径中各节点值的总和。 给你一个二叉树的根节点 root &…

IC698CRE040 GE 实现跨多个UPS设备的随处可见性

IC698CRE040 GE 实现跨多个UPS设备的随处可见性 通过人工智能、digital twin技术、由高级分析支持的人类洞察力以及独立于供应商的工业软件&#xff0c;效率和敏捷性正在发生巨大变化。施耐德电气通过为未来打造的弹性和可持续解决方案实现下一代工业自动化。 EcoStruxure自…

出现ZooKeeper JMX enabled by default这种错误的解决方法

系列文章专栏 学习以来遇到的bug/问题专栏 文章目录 系列文章专栏 前言 一 问题描述 二 解决方法 2.1 可能的原因分析 2.2 小编的问题解决方法 First&#xff1a;检查/etc/profile里面zookeeper的环境变量配置 Second&#xff1a;检查 zookeeper/conf/zoo.cfg里面的d…

拆解即时通讯行销,如何提升讯息开启率达300%?

图片来源&#xff1a;SaleSmartly官网 科技日新月异&#xff0c;今时今日商家均转战网络世界&#xff0c;开设网店售卖产品或服务&#xff0c;不少人都会转用即时通讯&#xff08;Instant Messaging&#xff0c;简称IM&#xff09;软件来和客户联络和宣传&#xff0c;因为即时通…

Unity3D 如何在ECS架构下,用Unity引擎进行游戏开发详解

前言 Unity3D是一款强大的游戏引擎&#xff0c;它提供了丰富的功能和工具&#xff0c;可以帮助开发者快速构建高质量的游戏。而Entity Component System&#xff08;ECS&#xff09;是Unity3D中一种新的架构模式&#xff0c;它可以提高游戏的性能和可扩展性。本文将详细介绍在…

自动化运维:Ansible脚本之playbook剧本

目录 一、理论 1.playbooks 2.YAML 3.使用ansible批量安装apache服务 4.定义、引用变量 5.指定远程主机sudo切换用户 6.when条件判断 7.迭代 8.Templates 模块 9.tags 模块 10.Roles 模块 二、实验 1.使用ansible批量安装apache服务 2.定义、引用变量…

S型曲线规划

s #include "stdio.h"typedef struct S_CTRL{ #define SSPD_BUF_LEN 100struct{float aMax;float aMin;float vMax;float J;/* 加加速度 */int t[7];int T[7];int tMax;}in;struct{float accBuf[SSPD_BUF_LEN];float decBuf[SSPD_BUF_LEN];long S[7];long V[7];}o…

电商API接口的研发和应用!

API&#xff08;Application Programming Interface&#xff0c;应用程序编程接口&#xff09;指的是为不同的软件应用程序提供编程接口的一组协议、规则以及工具的集合&#xff0c;以便它们能够互相交互&#xff0c;实现数据通信和功能调用。API已成为了现代软件开发和商业应用…

Linux系统部署部署excalidraw-cn白板工具

Linux系统部署部署excalidraw-cn白板工具 一、excalidraw-cn介绍二、本地环境介绍2.1 本地环境规划2.2 本次实践介绍2.3 Yarn介绍 三、检查本地环境3.1 检查本地操作系统版本3.2 检查系统内核版本3.3 检查系统是否安装yarn 四、部署Node.js 环境4.1 下载Node.js安装包4.2 解压N…

Docker技术--Docker中的网络问题

1.docker中的网络通信 如果想要弄清楚docker中的网络通信问题,其实需要弄清楚这几个问题就可以:容器与容器之间的通信、容器与外部网络之间的通信、外部网络与容器之间的通信。 -a:容器与容器之间的通信,如下所示: 在默认情况下,docker使用网桥(Bridge模式)与NAT通信。这…

Java监听mysql的binlog 报错解决办法

报错&#xff1a;com.github.shyiko.mysql.binlog.network.AuthenticationException: Client does not support authentication protocol requested by server; consider upgrading MySQL client 解决方案&#xff1a;在mysql中执行以下命令 alter user rootlocalhost identi…

JS将对象转为字符串

使用JSON.stringify()将对象转换为字符串 var person {name: Jack,age: 27 }console.log("person&#xff1a;"); console.log(person);var result JSON.stringify(person);console.log("result&#xff1a;"); console.log(result); console.log(&qu…

3D模型轻量化引擎HOOPS平台助力3D开发实现大模型轻量化渲染、3D模型格式转换!

一、包含的软件开发工具包 HOOPS Web平台帮助开发人员构建基于Web的工程应用程序&#xff0c;提供高级3D Web可视化、准确快速的CAD数据访问和3D数据发布。 HOOPS Web平台包括三个集成软件开发工具包 (SDK)&#xff1a; &#xff08;1&#xff09;Web端3D可视化引擎 HOOPSCom…

python的csv库:保存数字仅有15位,精度丢失的解决办法

废话不多说&#xff0c; 如果在字符串后添加制表符‘/t’能够解决问题&#xff0c;那么这确实是一个有效的解决方案。制表符‘/t’在CSV文件中可以被视为分隔符&#xff0c;确保数据不会被自动格式化或截断。 import csvdata [#15位数字["123456789012345"],#16位数…

Java集合体系

Java集合体系 一、概念二、集合分类 - java.util1、单列集合&#xff1a;一条数据只有一列1.1 List集合1.2 Set集合 2、双列集合&#xff1a;一条数据有两列2.1 特点2.2 Map接口的常用方法2.3 Map接口的常用实现类2.3.1 HashMap&#xff1a;key元素无序2.3.2 LinkedHashMap&…

微信开发之一键踢出群聊的技术实现

简要描述&#xff1a; 删除群成员 请求URL&#xff1a; http://域名地址/deleteChatRoomMember 请求方式&#xff1a; POST 请求头Headers&#xff1a; Content-Type&#xff1a;application/jsonAuthorization&#xff1a;login接口返回 参数&#xff1a; 参数名必选…

02 字母异位词分组

字母异位词分组 题解 哈希 给你一个字符串数组&#xff0c;请你将 字母异位词 组合在一起。可以按任意顺序返回结果列表。 字母异位词 是由重新排列源单词的所有字母得到的一个新单词。 题解 哈希 class Solution { public:vector<vector<string>> groupAnagram…

计网(第四章)(网络层)(六)

一、路由选择协议&#xff08;动态路由自动获取路由信息&#xff09;概述&#xff1a; 之前有提到过路由条目分为静态和动态两种。相应地&#xff0c;路由选择也就有静态和动态两种。 在第五节&#xff08;计网第四章&#xff08;网络层&#xff09;&#xff08;五&#xff0…