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.
1. 利用java自带排序功能。时间复杂度:O(nlogn)2. 利用count来记录出现次数。number来记录最大次数元素。
public class Solution {
public int majorityElement(int[] nums) {
if(nums.length == 1)
return nums[0];
Arrays.sort(nums);
return nums[nums.length/2];
}
}
代码转自: http://www.programcreek.com/2014/02/leetcode-majority-element-java/ 侵删!
public class Solution {
public int majorityElement(int[] num){
if (num.length == 1){
return num[0];
}
Arrays.sort(num);
int prev = num[0];
int count = 1;
for(int i = 1; i < num.length; i++){
if(num[i] == prev){
count++;
if(count > num.length/2) return num[i];
}else{
count = 1;
prev = num[i];
}
}
return 0;
}
}