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

深远互动 网站建设东阳畅销自适应网站建设

深远互动 网站建设,东阳畅销自适应网站建设,明年做那些网站能致富,网络维护公司排名大家好!我是曾续缘💝 今天是《LeetCode 热题 100》系列 发车第 3 天 哈希第 3 题 ❤️点赞 👍 收藏 ⭐再看,养成习惯 最长连续序列 给定一个未排序的整数数组 nums ,找出数字连续的最长序列(不要求序列元素…

大家好!我是曾续缘💝

今天是《LeetCode 热题 100》系列

发车第 3 天

哈希第 3 题

❤️点赞 👍 收藏 ⭐再看,养成习惯

最长连续序列

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

思路

如果将数组排序,那就是一个从头到尾数数的问题,但是这样做的话,排序需要 O ( n l o g ( n ) ) O(nlog(n)) O(nlog(n))的时间复杂度。
我们可以将数数的问题改为判断的形式进行。为什么需要排序,因为我们想在遍历时从一个连续序列的开头数到结尾来计算序列的长度。如果我们知道了一个序列的开头,为了判断连续,只需要判断下一个数是否在数组中存在就可以了,如此往复,直到下一个数不在数组中,就到了序列的结尾,也就可以直到序列长度了。
第二个问题是为了找到序列的开头,如何知道哪个数是序列的第一个数?也很简单,如果前一个数不在数组中,那这个数就是序列的开头第一个数了。

解题方法

将所有的数字加到哈希表中, 可以去掉多余的重复数字, 然后遍历哈希表中的每个数字, 如果是连续序列的第一个数字, 就不断地判断这个数字+1的数是否存在哈希表中, 这样找到这个连续序列的最后一个数字,进而得到这个序列的长度, 对于不是连续序列的第一个数字, 肯定就不是最长的连续序列, 跳过即可.

Code

class Solution {public int longestConsecutive(int[] nums) {Set<Integer> se = new HashSet<>();for(int num : nums){se.add(num);}int ans = 0;for(int num : se){if(se.contains(num - 1)){continue; // 说明不是连续序列中的第一个数字, 跳过}int cur = num;while(se.contains(cur + 1)){cur++;}ans = Math.max(ans, cur - num + 1);}return ans;}
}
http://www.yayakq.cn/news/602956/

相关文章:

  • 天津常规网站建设系列网站开发和网络安全
  • 怎么做网站超链接培训网站建设方案
  • 百度网站提交入口百度福州建网站哪家公司好
  • 网站策划厂m3型虚拟主机 wordpress
  • 做公司网站注意事项医院网站建设的理由
  • 广东购物网站建设价格画江湖网站开发文档
  • 网站管理后台文章排序wordpress 提供api
  • 国外单页制作网站模板下载网站 建设公司
  • 北京网站建设 降龙网wordpress的导航代码
  • 福州网站建设设计专业网站设计第三方服务
  • 一个网站交互怎么做的网站建设好后能直接打开吗
  • 自己做网站自己买服务器wordpress kan主题
  • 人才招聘网站开发大连建设工程设计院有限公司网站
  • 国外网站推广平台有哪些wordpress 文档模板
  • 网站开发学什么比较有优势wordpress发送邮箱软件
  • 网站建设对百度推广的影响wordpress 积分支付
  • 萝卜建站分类信息网站已备案 还不能访问
  • 大连建网站策划做网站需要购买什么
  • 网站建设 事迹网站换代理
  • 大连建设银行官网招聘网站阿里巴巴国际站运营教程
  • 辛集市住房和城乡建设厅网站中核集团2023校园招聘信息
  • 做网站优化公司php大气企业网站
  • 赫山区网站建设wordpress 锚点应用
  • 同ip网站珠海建网站
  • 怎么做网站可手机看网站建设 工具
  • 涟水住房和城乡建设局网站apache2 wordpress
  • 建网站公司营销型网站建设加快实施创新驱动发展战略
  • 天津项目网站建设广州市省建设厅网站
  • 深圳网站建设深圳企业网站建设wordpress 去掉超链接
  • 网站技术开发设计网站正在建设中色