public int[] singleNumbers(int[] nums) {
int m=0;//异或结果
for(int num:nums){
m^=num;
}
int n=1;
while((n&m)==0){
n<<=1;
}
//将数组分成两组
int team1=0;
int team2=0;
for(int num:nums){
if((n&num)==0){
team1^=num;
}
else{
team2^=num;
}
}
return new int[]{team1,team2};
}