Skip to content

Instantly share code, notes, and snippets.

@webber2408
Created October 7, 2022 19:24
Show Gist options
  • Save webber2408/39bcb8e7a63cbf4d82fbdab081ca517f to your computer and use it in GitHub Desktop.
Save webber2408/39bcb8e7a63cbf4d82fbdab081ca517f to your computer and use it in GitHub Desktop.
Approach-3) Find Duplicates - Negative Marking
class Solution {
public:
int findDuplicate(vector<int>& nums) {
for(int i=0; i<nums.size(); i++){
int absNum = abs(nums[i]);
if(nums[absNum] < 0){
// Number is duplicate
return absNum;
}
nums[absNum] = -nums[absNum];
}
for(int i=0; i<nums.size(); i++){
if(nums[i] < 0) nums[i] = -nums[i];
}
return -1;
}
};
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment