diff --git a/python/0128-longest-consecutive-sequence.py b/python/0128-longest-consecutive-sequence.py index 4a2168ba4..bbf7ab308 100644 --- a/python/0128-longest-consecutive-sequence.py +++ b/python/0128-longest-consecutive-sequence.py @@ -11,3 +11,18 @@ def longestConsecutive(self, nums: List[int]) -> int: length += 1 longest = max(length, longest) return longest + def longestConsecutiveNoRepeat(self, nums: List[int]) -> int: + numSet = set(nums) + longest = 0 + while len(numSet) > 0: + cur = 0 + i = numSet.pop() + numSet.add(i) + while i - 1 in numSet: + i -= 1 + while i in numSet: + numSet.remove(i) + cur += 1 + i += 1 + longest = max(cur, longest) + return longest