力扣链接:https://leetcode-cn.com/probl...
解题思路:
- 惯例思路:应用哈希/汇合来进行去重判断,然而须要从新开拓空间,导致空间复杂度回升
- 异或:英文为exclusive OR,缩写成xor,它有如下运算法令:
如上所示,在题目中,只有一个数字只呈现了一次,依据结合律&交换律&自反定律克可知,两个雷同的数字异或后果为0,0与任何数字异或等于数字自身,所以所有的数字与初始化数字0抑或,最初的值就是指呈现一次的数字
func singleNumber(nums []int) int { single := 0 for _, v := range nums { single ^= v } return single}