版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/hangzuxi8764/article/details/86521990
leetcode 961. 重复N次的元素 —python
第一道击败了100%用户的题,纪念一下。
题目:
在大小为 2N
的数组 A
中有 N+1
个不同的元素,其中有一个元素重复了 N
次。
返回重复了 N
次的那个元素。
示例 1:
输入:[1,2,3,3]
输出:3
示例 2:
输入:[2,1,2,5,3,2]
输出:2
示例 3:
输入:[5,1,5,2,5,3,5,4]
输出:5
分析:
数组长度为N,一共有N+1个元素,找出重复N次的元素。也就是说,只有一个元素会重复出现,其他N个元素都仅出现一次。所以我们的目标可以改为寻找出现次数超过两次的元素。代码如下:
class Solution(object):
def repeatedNTimes(self, A):
"""
:type A: List[int]
:rtype: int
"""
d = {}
N = len(A)
for item in A:
if item in d:
d[item] += 1
else:
d[item] = 1
if d[item] == 2:
return item