Longest Consecutive Sequence

You are given an unsorted array/list 'ARR' of 'N' integers. Your task is to return the length of the longest consecutive sequence.

The consecutive sequence is in the form ['NUM', 'NUM' + 1, 'NUM' + 2, ..., 'NUM' + L] where 'NUM' is the starting integer of the sequence and 'L' + 1 is the length of the sequence.

Note:

If there are any duplicates in the given array we will count only one of them in the consecutive sequence.
For example-
For the given 'ARR' [9,5,4,9,10,10,6].

Output = 3
The longest consecutive sequence is [4,5,6].
Follow Up:
Can you solve this in O(N) time and O(N) space complexity?
Input format :
The first line of input contains a single integer 'T', representing the number of test cases or queries to be run. Then the 'T' test cases follow.

The first line of each test case contains integer 'N' denoting the size of the array.

The second line of each test case contains 'N' single space-separated integers, elements of the array.  
Output format :
For each test case, print an integer in a single line that represents the length of the longest consecutive sequence.
Note :
You are not required to print the expected output; it has already been taken care of. Just implement the function. 
Constraints :
1 <= T <= 10
1 <= N <= 10^5
-10^9 <= ARR[i] <= 10^9

Time Limit: 1 sec
CodingNinjas
author
2y

I thought of two points on a number line a and b and formulated a consecutive sequence [a....b], (b*(b+1))/2-(a*(a+1))/2=n. Now we have a clearly quadratic solution by brute-forcing a and b but if we ...read more

CodingNinjas
author
2y
Brute Force

As we only need the consecutive elements in the form ['NUM', 'NUM' + 1, 'NUM' + 2,...,'NUM' + 'L']. The brute force approach is to traverse each element in the array ('NUM' = ‘ARR[i]’) and ...read more

CodingNinjas
author
2y
Sorting
  1. The idea is to sort the array, then iterate through the array and find the longest subarray containing consecutive elements.
  2. We first initialize the variable ‘COUNT’ = 0 which stores the length ...read more
CodingNinjas
author
2y
Using Hash Table

We can improve our time complexity of searching the next consecutive element in the array by using a Hash Table which can check the presence of an element in O(1).

The steps are as fo...read more

Aníl kumar
2mo
create an array of size maximum element then mark all by 1, in new array now find longest subarray which has maximum 1 in new array...for give eg create array of size 10, 0 1 2 3 4 5 6 7 8 9 10, now e...read more
Add answer anonymously...
Paytm Software Engineer Interview Questions
Stay ahead in your career. Get AmbitionBox app
qr-code
Helping over 1 Crore job seekers every month in choosing their right fit company
65 L+

Reviews

4 L+

Interviews

4 Cr+

Salaries

1 Cr+

Users/Month

Contribute to help millions
Get AmbitionBox app

Made with ❤️ in India. Trademarks belong to their respective owners. All rights reserved © 2024 Info Edge (India) Ltd.

Follow us
  • Youtube
  • Instagram
  • LinkedIn
  • Facebook
  • Twitter