1 int longestConsecutive(vector<int>& num) { 2 if(num.size() == 0) 3 return 0; 4 set<int> st(num.begin(),num.end()); 5 int count = 1; 6 for(int i = 0;i < num.size();i++) 7 { 8 int temp = num[i]; 9 if(st.count(temp) == 0) 10 continue; 11 int l = temp - 1; 12 int r = temp + 1; 13 while(st.count(l) != 0) 14 { 15 st.erase(l); 16 l--; 17 } 18 while(st.count(r) != 0) 19 { 20 st.erase(r); 21 r++; 22 } 23 count = max(count,r-l-1); 24 } 25 return count; 26 }
leetcode 23:longest-consecutive-sequence
原文:https://www.cnblogs.com/qingjiaowoxiaoxioashou/p/13512391.html