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

Popular posts from this blog

算法的比较