leetcode 寻找重复数 中等

 

 

先做这个,一样的思路:https://www.cnblogs.com/rookie-acmer/p/15101721.html

class Solution {
public:
    int findDuplicate(vector<int>& nums) {
        for(int i = 0; i < nums.size(); ++ i) {
            while(nums[i] != i + 1) {
                if(nums[nums[i] - 1] == nums[i]) return nums[i];
                swap(nums[nums[i] - 1], nums[i]);
            }
        }
        return -1;
    }
};

 

posted @ 2021-08-17 22:40  rookie_Acmer  阅读(17)  评论(0)    收藏  举报