You’re writing a function that accepts an array of unsorted integers and returns the length of the longest consecutive sequence among them. The sequence is formed by integers that increase by 1. For example, in the array: [10, 5, 12, 3, 55, 30, 4, 11, 2] the longest consecutive sequence is 2-3-4-5. These four integers form an increasing sequence because each integer is one greater than the previous one. While there’s also a sequence of 10-11-12, it’s only a sequence of three integers. In this case, the function should return 4, since that’s the length of the longest consecutive sequence that can be formed from this array. One more example: [19, 13, 15, 12, 18, 14, 17, 11] This array’s longest sequence is 11-12-13-14-15, so the function would return 5. Your job is to optimize the function so that it takes O(N) time.
You’re writing a function that accepts an array of unsorted integers and returns the length of the longest consecutive sequence among them. The sequence is formed by integers that increase by 1. For example, in the array:
the longest consecutive sequence is 2-3-4-5. These four integers form an increasing sequence because each integer is one greater than the previous one. While there’s also a sequence of 10-11-12, it’s only a sequence of three integers. In this case, the function should return 4, since that’s the length of the longest consecutive sequence that can be formed from this array.
One more example:
This array’s longest sequence is 11-12-13-14-15, so the function would return 5.
Your job is to optimize the function so that it takes O(N) time.
Trending now
This is a popular solution!
Step by step
Solved in 4 steps with 4 images
Hello, I would appreciate if the solution is described in C++ please.
Hello, I am working on C++. Java seems a little confusing to me. Can this be explained in C++. Thanks.