136. 只出现一次的数字
代码实现:
func singleNumber(nums []int) int {
// 利用的性质是 x^x = 0。
res := 0
for _, v := range nums {
res ^= v
}
return res
}
解题思路:由于位运算中 x ^ x = 0
,如果同一个数出现两次进行运算会变成0,而0 ^ x = x
。
136. 只出现一次的数字
代码实现:
func singleNumber(nums []int) int {
// 利用的性质是 x^x = 0。
res := 0
for _, v := range nums {
res ^= v
}
return res
}
解题思路:由于位运算中 x ^ x = 0
,如果同一个数出现两次进行运算会变成0,而0 ^ x = x
。