XOR的反函数是什么?

时间:2013-01-11 14:10:20

标签: java xor inverse

Java中有XOR函数 - a^b

例如:5^3 = 6

你能告诉我反函数吗?如果我有63我可以获得包含数字5的数字范围吗?

3 个答案:

答案 0 :(得分:132)

逆是异或!

如果你有:

c = a^b;

如果您有其他可用值,则可以返回ab

a = c^b; // or b^c (order is not important)
b = c^a; // or a^c

例如,如果你提到a = 5b = 3(以及c = 6),你会得到:

b=0011 (3)            a=0101 (5)
c=0110 (6) XOR   or   c=0110 (6) XOR
----------            ----------
a=0101 (5)            b=0011 (3)

答案 1 :(得分:29)

XOR的倒数是XOR .....

答案 2 :(得分:6)

异或的逆是异或本身。
我在 leetcode 上遇到了类似的问题。 Leetcode-1720