给定大小为N-1的数组C,并假设存在从1到N的数字,并且缺少一个元素,则将找到缺失的数字。
我已经知道可以使用XOR的一些有趣属性来解决它。
有趣的属性是
Assume a1 ^ a2 ^ a3 ^ …^ an = x and a1 ^ a2 ^ a3 ^ …^ an-1 = y
Then x ^ y = an
我试图理解逻辑,但失败了。
有人可以解释其中涉及的逻辑吗?
[a ^ a
根据定义为0,根据您的情况,您正在计算:
x: a[0] ^ a[1] ^ a[2] ^ .. ^ a[n-1] ^ a[n] ^
y: a[0] ^ a[1] ^ a[2] ^ .. ^ a[n-1]
=======================================
0 ^ 0 ^ 0 ^ .. ^ 0 ^ a[n] = a[n]