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

域名注册完成后如何做网站新乡专业做网站的公司哪家好

域名注册完成后如何做网站,新乡专业做网站的公司哪家好,一级a做爰片不卡免费网站,网站开发多久(一)问题描述 128. 最长连续序列 - 力扣(LeetCode)128. 最长连续序列 - 给定一个未排序的整数数组 nums ,找出数字连续的最长序列(不要求序列元素在原数组中连续)的长度。请你设计并实现时间复…

(一)问题描述

128. 最长连续序列 - 力扣(LeetCode)128. 最长连续序列 - 给定一个未排序的整数数组 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] <= 109icon-default.png?t=O83Ahttps://leetcode.cn/problems/longest-consecutive-sequence/description/?envType=study-plan-v2&envId=top-100-liked给定一个未排序的整数数组 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

 (二)解决思路

这道题目要求找连续序列,同时不要求序列位置连续,即查找数值大小上连续的元素有几个。那么使用哈希结构中的集合(Set)是最合适的:可以去除数组中重复的元素,又能快速找到符合条件的元素

思路很简单:

  • 找到序列的起始元素(即序列当中数值最小的元素)
  • 不断找到该序列中的下一个元素(比当前元素大一),每找到一个,序列长度就加一
  • 一个数组里可能包含多个序列,比较得到的多个长度取最大,就是当前数组中的最大连续序列长度。
class Solution {public int longestConsecutive(int[] nums) {//将给定数组转换为集合Set<Integer> s=new HashSet<>();for(int n : nums){s.add(n);}//用来记录序列长度的变量int longestStreak=0;//遍历集合中的元素for(Integer sn : s){//当前已经统计的序列长度,起始时只有一个元素int currentStreak=1;//当前元素的数值,起始时为当前遍历到的元素snint currentNum=sn;//序列当中没有比sn小1的元素,说明sn是一个序列的起始点if(!s.contains(sn-1)){   //只要有比sn大一的元素,就说明序列还没有结束,不断找序列中的下一个元素,同时序列长度加一while(s.contains(currentNum+1)){currentStreak+=1;currentNum+=1;}//取所有序列长度的最大值longestStreak=Math.max(longestStreak,currentStreak);}}return longestStreak;}
}

 (三)易错点

        这道题要求时间复杂度为O(n),那么就不能有排序,只要针对数组排序,时间复杂度就会大于O(n)。所以这道题解题的关键是想到找序列的起点,以及怎么找序列的节点。如果不找序列的起点,是没有办法按顺序累加元素的。

        另外也不是循环嵌套,时间复杂度就一定大于O(n)的哈。像这道题里面第二层循环的执行是有条件的,时间复杂度还是O(n)。

http://www.yayakq.cn/news/803995/

相关文章:

  • 网站 后台 回车不了怎样做自己可以发布消息的网站
  • 一次性筷子网站建设建立 wiki 网站
  • 微信文章导入wordpress国内做seo公司简介
  • 郑州服装网站建设兰州做公司网站
  • 深远互动 网站建设最优秀的无锡网站建设
  • 电商网站如何做精细化运营网站排名快速上升
  • wordpress一键建站合肥市网站建设公司
  • 北京网站seo排名优化建站公司最喜欢的网站
  • 怎么注册自己的网站域名做网站php与python
  • 中山做网站多少钱建设银行北京招聘网站
  • 最好的网站设计全景网站建设
  • 菜单宣传网站怎么做短信轰炸网站开发
  • 自己的网站怎么样推广优化鞍山玉佛苑官网
  • 陕西省建设部官方网站免费创建网站软件
  • 昆山网站网站建设网站创建方法
  • wordpress网站描述服装购物网站策划书
  • 手机网站菜单代码中小企业网络需求分析
  • 做烘焙网站wordpress可以做电影网站吗
  • 网站建设 印花税萌新seo
  • 成都市网站设计开发icp备案流程
  • 镇江网站优化seowordpress后台密码
  • 表白网页在线生成网站嘉兴秀洲区建设局网站
  • 美容网站开发网站建设功能选择表
  • 如何做京东购物网站关于网站建设项目实训报告
  • 做发帖的网站代码外贸网站如何做
  • 惠州做网站的公司有哪些移动端和pc端的意思
  • 广西建设工程造价管理协会网站做自媒体需要哪些网站
  • 做调查问卷换赏金的网站做排行榜的网站知乎
  • 纯免费建站域名备案查询网站备案
  • 一套网站设计多少钱369网站建设中心