LeetCode 287. Find the Duplicate Number

Posted 約束の空

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LeetCode 287. Find the Duplicate Number相关的知识,希望对你有一定的参考价值。

解法一:

类似 LeetCode 442. Find All Duplicates in an Array,由于元素是1~n,因此每个元素的值-1(映射到0~n-1)就可以直接当做下标。

class Solution {
public:
    int findDuplicate(vector<int>& nums) {
        for (int i=0;i<nums.size();++i){
            int index=abs(nums[i])-1;
            if (nums[index]>0) nums[index]*=-1;
            else return index+1;
        }
    }
};

 

解法二:

 

以上是关于LeetCode 287. Find the Duplicate Number的主要内容,如果未能解决你的问题,请参考以下文章

LeetCode 287. Find the Duplicate Number(找重复数字)

[LeetCode] 287. Find the Duplicate Number

LeetCode 287. Find the Duplicate Number

<LeetCode OJ> 287. Find the Duplicate Number

[LeetCode] 287. Find the Duplicate Number 寻找重复数

LeetCode 287. Find the Duplicate Number (找到重复的数字)