我必须对两个数组应用异或,比如假设我有:
array_1: 1 0 1 0 1 1
array_2: 1 0 0 1 0 1
我想要一个函数,它接受两个数组并返回一个应用 XOR 的数组,所以在这种情况下,我希望这个函数返回:
returned_array: 0 0 1 1 1 0
请帮我一个算法..谢谢!
如果您将这些数字存储在字节数组中,请使用以下简单的解决方案:
byte[] array_1 = new byte[] { 1, 0, 1, 0, 1, 1 };
byte[] array_2 = new byte[] { 1, 0, 0, 1, 0, 1 };
byte[] array_3 = new byte[6];
int i = 0;
for (byte b : array_1)
array_3[i] = b ^ array_2[i++];
输出数组:
0 0 1 1 1 0
这会是一个很好的解决方案吗?(感谢你给我的东西,我写了这篇文章)
if(array1.length==array2.length){
for(int i=0;i<array1.length;i++){
output.add(logicalXOR(array1.get(i),array2.get(i)))
}
}
当然 array1,2 和输出将是 arrayLists