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) {
- HashMap<Integer,Integer> map =new HashMap<Integer,Integer>();
- int mid = nums.length/2;
- for(int i = 0;i<nums.length;i++){
- if(map.containsKey(nums[i])){
- int j = map.get(nums[i])+1;
- if(j>=mid) return nums[i];
- else map.put(nums[i], j);
- }else{
- map.put(nums[i], 0);
- }
- }
- return nums[0];
- }
- }
原文链接http://blog.youkuaiyun.com/crazy__chen/article/details/46388301