287. 寻找重复数
题目链接:287. 寻找重复数
代码如下:
//标记法
class Solution
{
public:
int findDuplicate(vector<int>& nums)
{
for(int i=0;i<nums.size();i++)
{
int index=abs(nums[i]);
if(nums[index]<0) {return index;}
nums[index]=-nums[index];
}
return -1;
}
};
//哈希法
// class Solution
// {
// public:
// int findDuplicate(vector<int>& nums)
// {
// unordered_map<int,int> um;
// for(int i=0;i<nums.size();i++)
// {
// um[nums[i]]++;
// if(um[nums[i]]>=2)
// {
// return nums[i];
// }
// }
// return -1;
// }
// };