Skip to content

寻找重复数 #37

Open
Open

Description

@CodeRookie262

给定一个包含 n + 1 个整数的数组 nums ,其数字都在 1 到 n 之间(包括 1 和 n),可知至少存在一个重复的整数。

假设 nums 只有 一个重复的整数 ,找出 这个重复的数 。

示例 1:

输入:nums = [1,3,4,2,2]
输出:2

示例 2:

输入:nums = [3,1,3,4,2]
输出:3

示例 3:

输入:nums = [1,1]
输出:1

示例 4:

输入:nums = [1,1,2]
输出:1

 

提示:

  • 2 <= n <= 3 * 104
  • nums.length == n + 1
  • 1 <= nums[i] <= n
  • nums 中 只有一个整数 出现 两次或多次 ,其余整数均只出现 一次

来源:力扣(LeetCode)

Activity

  1. CodeRookie262 commented on Feb 5, 2021

    @CodeRookie262
    OwnerAuthor

    O(n) 解法,将访问过的数据存起来,如果下次读到重复的就将对应的数值返回出来

    var findDuplicate = function(nums) {
        let map = new Map;
        for(var n of nums){
            if(!map.get(n)){
                map.set(n,true);
            }else{
                return n;
            }
        }
    };
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions