class Solution {
public:
vector<int> majorityElement(vector<int>& nums) {
// 先进性排序,然后进行逐个查找,时间复杂度o(n2)-o(nlogn)
sort(nums.begin(),nums.end());
vector<int> result;
set<int> result1;
int num = nums[0];
int count = 0;
for(auto x:nums){
// 如果有新元素,那么重置当前元素和计数器
if(num!=x){
num = x;
count = 1;
}else{
// 如果相等,那么计数器加一
count++;
}
if(count>(nums.size()/3)){
result1.insert(num);
}
}
for(auto s:result1){
result.push_back(s);
}
return result;
}
};
LeetCode;229.多数元素II;标签:排序
最新推荐文章于 2024-07-10 11:26:09 发布