LeetCode 1720. 解码异或后的数组
主要是利用异或运算的性质:
- 异或运算满足交换律和结合律;
- 任意整数和自身做异或运算的结果都等于 0,即 x⊕x = 0;
- 任意整数和 0 做异或运算的结果都等于其自身,即 x⊕0 = x;
class Solution {
public int[] decode(int[] encoded, int first) {
int length = encoded.length + 1;
int[] arr = new int[length];
arr[0] = first;
for(int i = 1; i < length; i++) {
arr[i] = arr[i - 1] ^ encoded[i - 1];
}
return arr;
}
}