题目128:Longest Consecutive Sequence
题目描述:
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.
题目分析:
在一个没有排序的整型数组中,找到长度最长的顺序连续的子序列,举例的很清楚,要求时间复杂度是O(n) 。
思路分析:
如果时间复杂度没有要求,则先对数组排序,排序后遍历,但排序的时间复杂度是O(nlog n),不符合要求;
有看过别人的解法,有用C++ STL中的set,set和multiset都会自动对元素排序,排序复杂度就会上去。
先写到这里,回来来补充。
本文解析了LeetCode上的经典算法题“最长连续序列”,介绍了题目的要求为寻找未排序整数数组中最长的连续子序列,并强调了算法的时间复杂度必须为O(n)。文章探讨了解决该问题的有效策略,包括不推荐的排序方法及其原因。
912

被折叠的 条评论
为什么被折叠?



