给你一个整数数组 arr
,请你帮忙统计数组中每个数的出现次数。
如果每个数的出现次数都是独一无二的,就返回 true
;否则返回 false
。
示例 1:
输入:arr = [1,2,2,1,1,3] 输出:true 解释:在该数组中,1 出现了 3 次,2 出现了 2 次,3 只出现了 1 次。没有两个数的出现次数相同。
示例 2:
输入:arr = [1,2] 输出:false
示例 3:
输入:arr = [-3,0,1,-3,1,1,1,-3,10,0] 输出:true
提示:
1 <= arr.length <= 1000
-1000 <= arr[i] <= 1000
**难度**: Easy
**标签**: 哈希表、
# -*- coding: utf-8 -*-
# @Author : LG
"""
执行用时:44 ms, 在所有 Python3 提交中击败了95.14% 的用户
内存消耗:13.7 MB, 在所有 Python3 提交中击败了5.42% 的用户
解题思路:
先统计每个数出现的次数
然后查看次数是否存在重复
"""
class Solution:
def uniqueOccurrences(self, arr: List[int]) -> bool:
record = {}
for a in arr:
if a in record:
record[a] += 1
else:
record[a] = 1
return len(record.values()) == len(set(record.values()))