[LeetCode] Longest Consecutive Sequence
来源:互联网 发布:foreach遍历数组 编辑:程序博客网 时间:2024/06/01 15:36
题目:
Given an unsorted array of integers, find the length of the longest consecutive elements sequence.
For example,
Given [100, 4, 200, 1, 3, 2],
The longest consecutive elements sequence is [1, 2, 3, 4]. Return its length: 4.
Your algorithm should run in O(n) complexity.
Subscribe to see which companies asked this question
思路:
用一个map存储数组中每个值。
遍历数组,比如到了“4”这个数,我将判断map中是否出现3,2,1。。。5,6,7。。。出现则距离增加,并且map中3,2,1等置空,这样时间复杂度O(n)
public class Solution { public int longestConsecutive(int[] nums) { if(nums.length == 0){return 0;} HashMap<Integer, Integer> map = new HashMap<>(); int longestValue = Integer.MIN_VALUE; for(int i=0;i<nums.length;i++) { map.put(nums[i], 1); } for(int i=0;i<nums.length;i++) { int dis = 1; int value = nums[i]; if(map.get(value) !=1){continue;} int leftValue = value - 1,rigthValue = value+1; while(map.containsKey(leftValue)&&map.get(leftValue) == 1) { dis++; map.put(leftValue, 0); leftValue--; } while(map.containsKey(rigthValue)&&map.get(rigthValue) == 1) { dis++; map.put(rigthValue, 0); rigthValue++; } if(dis>longestValue){longestValue = dis;} } return longestValue; }}
0 0
- Leetcode : Longest Consecutive Sequence
- [Leetcode] Longest Consecutive Sequence
- [leetcode] longest consecutive sequence
- 【leetcode】Longest Consecutive Sequence
- LeetCode - Longest Consecutive Sequence
- [LeetCode]Longest Consecutive Sequence
- leetcode:Longest Consecutive Sequence
- [Leetcode]Longest Consecutive Sequence
- [leetcode]Longest Consecutive Sequence
- leetcode Longest Consecutive Sequence
- Leetcode: Longest Consecutive Sequence
- LeetCode:Longest Consecutive Sequence
- [leetcode] Longest Consecutive Sequence
- LeetCode-Longest Consecutive Sequence
- LeetCode - Longest Consecutive Sequence
- [LeetCode] longest consecutive sequence
- LeetCode | Longest Consecutive Sequence
- [leetcode]Longest Consecutive Sequence
- MFC消息映射
- ACM_算法_Lucas定理
- JDBC介绍(详细版)
- 计算textview 文字宽度
- Spring整合Mybatis简要概括
- [LeetCode] Longest Consecutive Sequence
- solution Of 1095. Cars on Campus (30)
- 钱:越舍得花越有,越不舍得越穷!
- subline text 插件 整合
- [Leetcode]6. ZigZag Conversion
- 百度定位Sdk 162错误解决方法之Android Studio
- hibernate和数据库中出现乱码解决
- 使用apache.poi生成Excel
- 穷人看问题,富人看目标!