
题目中明确提到一定存在众数,否则需要再次遍历一遍数组,确定得到的结果数量超过一半。
int majorityElement(vector<int>& nums) {
int res = nums[0];
int times = 0;
for(int i:nums){
if(res==i)
++times;
else
--times;
if(times==0){
res=i;
times=1;
}
}
return res;
}
博客指出题目中若明确存在众数,可直接处理;若未明确,则需再次遍历数组,以确定得到的结果数量超过一半。主要围绕数组众数的判断及处理方式展开。
341

被折叠的 条评论
为什么被折叠?



