每日力扣-哈希-输出重复数字

97 阅读1分钟

找出数组中重复的数字。

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

class Solution {
public:
    int findRepeatNumber(vector<int>& nums) {
        map<int,int> hash;
        for(int i = 0 ; i < nums.size() ; i++)
        {
            hash[nums[i]] ++;
        }
        for(const auto& x : hash)
        {
            if(x.second > 1) return x.first;
        }
        return -1;
    }
};