本文已参与「新人创作礼」活动,一起开启掘金创作之路。
题目
代码
class Solution {
public:
int majorityElement(vector<int>& nums) {
int number=1;
int pre=nums[0];
for(int i=1;i<nums.size();++i){
if(nums[i]==pre){
++number;
}
else{
--number;
if(number==0){
pre=nums[i];
number=1;
}
}
}
int t=nums.size()/2+1;
for(auto num:nums){
if(num==pre){--t;}
}
if(t<=0){
return pre;
}
else{
return -1;
}
}
};
这种代码是一类代码,叫投票算法。