124. 最长连续序列
Posted yunxintryyoubest
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了124. 最长连续序列相关的知识,希望对你有一定的参考价值。
124. 最长连续序列
中文English
给定一个未排序的整数数组,找出最长连续序列的长度。
样例
样例 1
输入 : [100, 4, 200, 1, 3, 2]
输出 : 4
解释 : 这个最长的连续序列是 [1, 2, 3, 4]. 返回所求长度 4
说明
要求你的算法复杂度为O(n)
class Solution: """ @param num: A list of integers @return: An integer """ ‘‘‘ 大致思路: 1.先排序,然后判断下一位是否大于当前,如果大于c += 1,否则c重置,最终返回m ‘‘‘ def longestConsecutive(self, num): num.sort() num.append(min(num)-1) c = 1 m = 0 for i in range(len(num)-1): if num[i+1] == num[i]: continue if num[i+1] == num[i] + 1: c += 1 else: if c > m: m = c c = 1 return m
以上是关于124. 最长连续序列的主要内容,如果未能解决你的问题,请参考以下文章
华为OD机试 - 最长连续子串(Python)| 真题+思路+考点+代码+岗位
代码随想录算法训练营第五十二天 | 300.最长递增子序列 674. 最长连续递增序列 718. 最长重复子数组
在一个无序整数数组中,找出连续增长片段最长的一段, 增长步长是1。Example: [3,2,4,5,6,1,9], 最长的是[4,5,6]