Cover image for Interview Classic 150 Questions P136 Single Number

Interview Classic 150 Questions P136 Single Number


Timeline

Timeline

2025-11-25

init

Bit Manipulation

Problem:

Mainly uses XOR operation: same bits clear to 0, different bits set to 1.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <vector>
using std::vector;

class Solution {
public:
int singleNumber(vector<int> &nums)
{
int i, n = nums.size();

int res = nums[0];
for (i = 1; i < n; i++) {
res = res ^ nums[i];
}
return res;
}
};

leetcode hot 100 rewrite

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <vector>
using std::vector;

class Solution {
public:
int singleNumber(vector<int> &nums)
{
int i, n = nums.size();
int target = nums[0];

for (i = 1; i < n; i++)
target ^= nums[i]; // XOR

return target;
}
};