问题描述:
Given an array of size n, find the majority element. The majority element is the element that appears more than ⌊ n/2 ⌋
times.
You may assume that the array is non-empty and the majority element always exist in the array.
class Solution {
public:
int majorityElement(vector<int>& nums) {
int major=nums[0], count = 1;
for(int i=1; i<nums.size();i++){
if(count==0){
count++;
major=nums[i];
}else if(major==nums[i]){
count++;
}else count--;
}
return major;
}
};
majority element是数组当中出现次数最多的一个,根据这个特点可得上面代码。