您的位置:首页 > 其它

169. Majority Element

2017-03-18 09:10 176 查看
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.  首先用hashmap

hashmap中先写   !map.containsKey() 比 map.containsKey() 的速度快一倍

if(nums.length == 0 && nums == null) return 0;

Map<Integer,Integer> map = new HashMap<>();
for(int i = 0; i < nums.length; i++) {
if(!map.containsKey(nums[i])) {
map.put(nums[i], 1);
} else {
map.put(nums[i], map.get(nums[i]) + 1);
}
}
int c= 0;
for(Map.Entry<Integer, Integer> entry : map.entrySet()) {
if(entry.getValue() > (nums.length/2) ) c = entry.getKey();
}
return c;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: