题目:
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.
分析:
我一开始用的map,然后利用map来判断一共出现次数,但是我看了discuss区别人的做法。。利用more than n/2这个条件得到值,不得不说确实很厉害。
明天好好想一下,回寝室跑步了。
代码:
class Solution {
public:
int majorityElement(vector<int>& nums) {
map<int,int> myMap;
for(int i=0;i<nums.size();++i){
myMap[nums[i]]++;
if(myMap[nums[i]]>nums.size()/2)return nums[i];
}
}
};