【 声明:版权所有,转载请标明出处,请勿用于商业用途。 联系信箱:libin493073668@sina.com】
题意:
给定一个数组,数字里只有两个数字只出现一次,其他数字都出现两次,要求找出只出现一次的两个数字
思路:
还是先排好序,然后两个两个一组进行比较
class Solution
{
public:
vector<int> singleNumber(vector<int>& nums)
{
int len = nums.size();
int i,j;
sort(nums.begin(),nums.end());
vector<int> ans;
for(i = 0; i<len;)
{
if(nums[i]==nums[i+1])
{
i+=2;
continue;
}
ans.push_back(nums[i]);
i++;
}
if(ans.size()==1)//避免最后一个为0的时候没有加进去
ans.push_back(nums[len-1]);
return ans;
}
};