LeetCode:Longest Consecutive Sequence
来源:互联网 发布:java注释的作用 编辑:程序博客网 时间:2024/05/17 02:39
Longest Consecutive Sequence
Total Accepted: 67348 Total Submissions: 206214 Difficulty: Hard
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
Hide Similar Problems
思路:
使用一个Map保存连续序列两个边缘的值,这个值表示这个序列最大宽度。
如有nums = [1,2,3,4,5],则map.get(1) = map.get(5) = 5;
设有nums = [1,2,5,6,3,4].
1 2 3 4 5 6
1: 1
2: 2 2
5: 2 2 1
6: 2 2 2 2
3: 3 2 3 2 2
4: 6 2 3 6 2 6
java code:
public class Solution { public int longestConsecutive(int[] nums) { int ans = 0; Map<Integer, Integer> map = new HashMap<Integer, Integer>(); for(int n : nums) { if(!map.containsKey(n)) { int left = map.containsKey(n-1) ? map.get(n-1) : 0; int right = map.containsKey(n+1) ? map.get(n+1) : 0; int sum = left + right + 1; map.put(n, sum); map.put(n-left, sum); map.put(n+right, sum); ans = Math.max(ans, sum); } } return ans; }}
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
- <OJ_Sicily>Greatest Common Divisors
- 网络视频刷单调查:4分钟免费刷2.2万300元能买4000万点击
- Range——克隆内容cloneContents()
- Activity七大生命周期详解
- leetcode 234 Palindrome Linked List C++
- LeetCode:Longest Consecutive Sequence
- 星期几的不同脚本写法(推荐)和JS年月日格式
- G-Dezender批量解密
- 在Windows上编译Wireshark源代码
- Android View工作机制(4)— 我们该什么时候获取View的高宽?
- 模仿微信通讯录侧边栏快速索引
- cocos2d 性能优化1
- C++ 字符串字面值常量的问题
- 过遍数