题目描述:
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.
思路:对数组进行排序,排序过后,数组的主元素必定位于数组中间的位置。
代码:
int my_cmp(int a,int b)
{
return a > b;
}
int Solution::majorityElement(vector<int> &num)
{
sort(num.begin(),num.end(),my_cmp);
return num[num.size()/2];
}