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.
Credits:
Special thanks to @ts for adding this problem and creating all test cases.
public class Solution {
public int majorityElement(int[] num) {
Arrays.sort(num);
int mid = num.length/2;
return num[mid];
}
}
算法分析:
给你一个大小为n的array。找到其主要元素,主要元素是指出现超过n/2次的元素。
假定该数组是非空的,并且主要元素一定存在于数组中。
思路:
1,当array大小小于等于2时,仅有的一个元素,或者2个元素都是主要元素。
2,将数组排序,则中间的那个元素一定是主要元素。