Теперь вы знаете по всем ответам, что ^=
является оператором XOR и становится.
Когда x ^ x == 0 и x ^ 0 == x делаюткумулятивный XOR удалит дважды встречающиеся дубликаты, и результатом будет единственное единственное вхождение.
3 ^ 5 ^ 3 ^ 7 ^ 5 = (3 ^ 3) ^ (5 ^ 5) ^ 7 = 0 ^ 0 ^ 7 = 7
3 6 5 2 7 <--- stepwise accumulated: 3=1+2, 5=1+4, 7=1+2+4
XOR - интересная коммутативная и ассоциативная функция "бит отличается" , поскольку не делаетпотерять информацию,
z = x ^ y => y = z ^ x