Leetcode刷题Python剑指 Offer 03. 数组中重复的数字

Posted Better Bench

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Leetcode刷题Python剑指 Offer 03. 数组中重复的数字相关的知识,希望对你有一定的参考价值。

1 题目

找出数组中重复的数字。

在一个长度为 n 的数组 nums 里的所有数字都在 0~n-1 的范围内。数组中某些数字是重复的,但不知道有几个数字重复了,也不知道每个数字重复了几次。请找出数组中任意一个重复的数字。

示例 1:

输入:
[2, 3, 1, 0, 2, 5, 3]
输出:2 或 3

2 解析

用字典,即可实现。
注意,这题不能用list的count函数,使用list.count()方法会超时。

3 python实现

class Solution:
    def findRepeatNumber(self, nums: List[int]) -> int:
        map = 
        for num in nums:
            if num in map.keys():
                return num
            else:
                map[num] = 1

以上是关于Leetcode刷题Python剑指 Offer 03. 数组中重复的数字的主要内容,如果未能解决你的问题,请参考以下文章

Leetcode刷题Python剑指 Offer 30. 包含min函数的栈

Leetcode刷题Python剑指 Offer II 082. 含有重复元素集合的组合

Leetcode刷题Python剑指 Offer 32 - I. 从上到下打印二叉树

Leetcode刷题Python剑指 Offer 04. 二维数组中的查找

Leetcode刷题Python剑指 Offer 11. 旋转数组的最小数字

Leetcode刷题Python剑指 Offer 18. 删除链表的节点