哈希表的实现
class Solution
{
public:
int findRepeatNumber(vector<int>& nums)
{
unordered_set<int> ss;//创建一个哈希表
for(int i = 0; i<nums.size();i++)//遍历数组
{
if(ss.count(nums[i]) != 0)//先将数组中的数据放到哈希表中,重复放的就会返回
return nums[i];
else
ss.insert(nums[i]);
}
return 0;
}
};
数组的实现
我们的实现是先排序,然后判断相邻的两个数字之间是不是相同,是的话就返回数字
sort函数有三个参数
sort(first,last,cmp)
class Solution
{
public:
int findRepeatNumber(vector<int>& nums)
{
sort(nums.begin(),nums.end());
for(int i=0;i<nums.size()-1;i++)
{
if(nums[i] == nums[i+1])
return nums[i];
}
return 0;
}
};