leetcode 128. 最长连续序列
思路:
先对数组进行排序,然后遍历寻找连续序列并计数,注意相等的情况
代码
class Solution { public: int longestConsecutive(vector<int>& nums) { if(nums.empty()) return 0; sort(nums.begin(),nums.end()); // 先对数组进行排序 int tmp =1,result =1; for(int i =1;i<nums.size();i++) { if(nums[i] == nums[i-1]) // 如果和前面一个相等 { continue; } if(nums[i] == nums[i-1]+1) //连续序列 { tmp++; result = max(tmp,result); } else { tmp = 1; } } return result; } };
以大多数人努力程度之低,根本轮不到去拼天赋~