124. Longest Consecutive Sequence
class Solution {
public:
/**
* @param num: A list of integers
* @return: An integer
*/
int longestConsecutive(vector<int> &num) {
// write your code here
unordered_set<int> set;
const int size = num.size();
if(size == 0){
return 0;
}
set.insert(num.begin(), num.end());
int res = 1;
for(int i = 0; i < size; i++){
if(set.count(num[i])){
int left = num[i] - 1;
while(set.count(left)){
set.erase(left);
left--;
}
int right = num[i] + 1;
while(set.count(right)){
set.erase(right);
right++;
}
res = max(res, right - left - 1);
}
}
return res;
}
};
Comments
Post a Comment