class Solution {
public:
    vector<int> singleNumber(vector<int>& nums) {
        if(nums.size() == 2)
        {
            return nums;
        }
        vector<int> ret;
        sort(nums.begin(),nums.end());
        int i=0;
        while(i<nums.size())
        {
            if (i + 1 < nums.size())
        {
            if (nums[i] == nums[i + 1])
            {
                i += 2;
            }
            else
        {
            ret.push_back(nums[i]);
            i++;
        }
        }
        else
        {
            ret.push_back(nums[i]);
            i++;
        }
        }
        return ret;
    }
};