Java-Majority Element

来源:互联网 发布:条顿森林知乎 编辑:程序博客网 时间:2024/04/28 08:02

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.

要求找出出现次数过半的数组元素 只要使用哈希表 进行一次遍历存储 满足hm.get(num[i])>num.length/2-1的即使所求结果 代码如下:

public class Solution {    public int majorityElement(int[] num) {        Map<Integer,Integer> hm=new HashMap<Integer,Integer>();        for(int i=0;i<num.length;i++){            if(hm.containsKey(num[i])){                if(hm.get(num[i])>num.length/2-1){                    return num[i];                }else{                    hm.put(num[i],hm.get(num[i])+1);                }            }else{                    hm.put(num[i],1);            }         }        return num[0];    }}


 

0 0
原创粉丝点击