LeetCode刷题笔记 Java 腾讯 数学与数字 多数元素

给定一个大小为 n 的数组,找到其中的多数元素。多数元素是指在数组中出现次数 大于 ⌊ n/2 ⌋ 的元素。

你可以假设数组是非空的,并且给定的数组总是存在多数元素。

LeetCode刷题笔记 Java 腾讯 数学与数字 多数元素_第1张图片

Hash:

哈希储存数和次数,当出现次数过多则直接返回

class Solution {
    public int majorityElement(int[] nums) {
        int l=nums.length;
        Map map=new HashMap();
        for(int num:nums){
            int n=map.getOrDefault(num,0)+1;
            if(n>l/2){
                return num;
            }
            map.put(num,n);
        }
        return -1;
    }
}

你可能感兴趣的:(LeetCode,java,leetcode,开发语言)