要求
给你一个整数数组 A,请找出并返回在该数组中仅出现一次的最大整数。
如果不存在这个只出现一次的整数,则返回 -1。
示例 1:
输入:[5,7,3,9,4,9,8,3,1]
输出:8
解释:
数组中最大的整数是 9,但它在数组中重复出现了。而第二大的整数是 8,它只出现了一次,所以答案是 8。
示例 2:
输入:[9,9,8,8]
输出:-1
解释:
数组中不存在仅出现一次的整数。
核心代码
class Solution:
def largestUniqueNumber(self, nums: List[int]) -> int:
from collections import Counter
dict = Counter(nums)
res = -1
for key,val in dict.items():
if val == 1:
res = max(res,key)
return res
解题思路:我们借助Counter统计形成字典,保存出现一次的数值为历史最佳。