• LeetCode 1207 独一无二的出现次数


    LeetCode 1207 独一无二的出现次数

    问题描述:
    给你一个整数数组 arr,请你帮忙统计数组中每个数的出现次数。
    如果每个数的出现次数都是独一无二的,就返回 true;否则返回 false。

    Map+Set

    执行用时:2 ms, 在所有 Java 提交中击败了91.43%的用户
    内存消耗:36 MB, 在所有 Java 提交中击败了97.92%的用户

    class Solution {
        public boolean uniqueOccurrences(int[] arr) {
            if(arr==null || arr.length==0) {
                return false;
            }
            //hashmap统计
            HashMap<Integer, Integer> hashMap = new HashMap<>();
            for(int num: arr) {
                hashMap.put(num, hashMap.getOrDefault(num, 0)+1);
            }
    
            //查找是否存在重复
            Set<Integer> hashSet = new HashSet<>();
            for(Integer num: hashMap.values()) {
                if(hashSet.isEmpty() || !hashSet.contains(num)) {
                    hashSet.add(num);
                }
                else {
                    return false;
                }
            }
    
            return true;
        }
    }
    
  • 相关阅读:
    UPC 5130 Concerts
    poj 1079 Calendar Game
    2018 ACM-ICPC 中国大学生程序设计竞赛线上赛
    CF932E
    浅谈Tarjan算法
    拉格朗日差值
    扩展欧几里得算法(exgcd)
    欧拉定理
    莫比乌斯反演
    除法分块
  • 原文地址:https://www.cnblogs.com/CodeSPA/p/13889009.html
Copyright © 2020-2023  润新知