【Leetcode_easy】645. Set Mismatch

problem

645. Set Mismatch

题意:

solution1:

统计每个数字出现的次数了,然后再遍历次数数组,如果某个数字出现了两次就是重复数,如果出现了0次,就是缺失数。

注意:如何统计每个数字出现的次数;

class Solution {
public:
    vector<int> findErrorNums(vector<int>& nums) {
        vector<int> res(2, 0), cnt(nums.size(), 0);
        for(auto num:nums) ++cnt[num-1];
        for(int i=0; i<nums.size(); ++i)
        {
            if(cnt[i] == 2) res[0] = i+1;
            else if(cnt[i]==0) res[1] = i+1;
        }
        return res;
    }
};

solution2:相反数;

参考

1. Leetcode_easy_645. Set Mismatch;

2. Grandyang;

原文地址:https://www.cnblogs.com/happyamyhope/p/11084328.html