参考链接
- https://leetcode-cn.com/problems/xor-operation-in-an-array/## 题目描述
给你两个整数,n 和 start 。
数组 nums 定义为:nums[i] = start + 2*i(下标从 0 开始)且 n == nums.length 。
请返回 nums 中所有元素按位异或(XOR)后得到的结果。
解题思路
简单的数组遍历问题。常规思路是先按规则构建好数组,然后逐个异或即可。但本题不构建数组也是可以的,直接边计算元素值边计算异或结果就行了。
代码
class Solution {
public:
int xorOperation(int n, int start) {
int res = start;
for (int i = 1; i < n; i ++)
{
res ^= start + 2 * i;
}
return res;
}
};