当前位置: 首页> 教育> 培训 > 128. 最长连续序列

128. 最长连续序列

时间:2025/8/18 18:55:02来源:https://blog.csdn.net/weixin_73670733/article/details/141425261 浏览次数:0次

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] <= 109
  • class Solution {public int longestConsecutive(int[] nums) {ArrayList<Integer> list = new ArrayList<>();Map<Integer,Integer> map=new HashMap<>();for(int num:nums){map.put(num,map.getOrDefault(num,0)+1);if(map.get(num)==1){list.add(num);}}if(list.size()<=1) return list.size();int mx=1,ans=0;Collections.sort(list);int begin=list.get(0);for(int i=1;i<list.size();i++){if(list.get(i)-begin==1){mx++;}else{mx=1;}begin=list.get(i);ans=Math.max(mx,ans);}return ans;}
    }

关键字:128. 最长连续序列

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: