您的位置:首页 > 其它

169. Majority Element

2017-05-10 22:08 344 查看
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.

public class Solution {
public int majorityElement(int[] nums) {
if(nums.length==0)
return 0;
HashMap<Integer,Integer> hash=new HashMap<>();
List<Integer> inte=new ArrayList<>();
for(int i=0;i<nums.length;i++){
if(hash.get(nums[i])!=null){
int nu = hash.get(nums[i]);
hash.put(nums[i],++nu);
}
else{
hash.put(nums[i],1);
inte.add(nums[i]);
}
}

int max=0,maxnum=0;
for(int i=0;i<inte.size();i++){
int temp=hash.get(inte.get(i));
if(temp>max){
max=temp;
maxnum=inte.get(i);
}
}

if(max>(nums.length>>1))
return maxnum;
else
return 0;

}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  LeetCode