【Golang】LeetCode 136. 只出现一次的数字

136. 只出现一次的数字

题目描述

思路

题目中已经明确说,除了答案对应的那个元素之外,其它元素均出现两次,因此我们直接对整个数组进行异或,即可得到最终的答案。异或的性质就是相同的两个数值求异或,答案是0,而不同的两个数值进行异或,答案是1,因此对整个数组求异或,出现过两次的元素最终都消失了,只剩下答案对应的那个元素。

Golang 题解

go 复制代码
func singleNumber(nums []int) int {
    candidate := nums[0]
    for i := 1; i < len(nums); i ++ {
        candidate ^= nums[i]
    }
    return candidate
}

至此,今天的刷题任务完成了✅。

相关推荐
YGGP3 小时前
【Golang】LeetCode 169. 多数元素
算法·leetcode
顾安r3 小时前
11.20 脚本网页 数学分支
算法·数学建模·html
少许极端3 小时前
算法奇妙屋(二十)-回文子串/子序列问题(动态规划)
java·算法·动态规划·图解·回文串·回文序列
天赐学c语言3 小时前
12.20 - 反转链表II && 传值和传地址的区别
数据结构·c++·算法·链表·leecode
如意鼠3 小时前
大模型教我成为大模型算法工程师之day20: 预训练语言模型 (Pre-trained Language Models)
人工智能·算法·语言模型
_OP_CHEN3 小时前
【算法基础篇】(三十六)图论基础之拓扑排序:从原理到实战,搞定 DAG 图的 “先后次序” 难题
c++·算法·蓝桥杯·图论·拓扑排序·算法竞赛·acm/icpc
良木生香3 小时前
【诗句结构-初阶】详解栈和队列(2)---队列
c语言·数据结构·算法·蓝桥杯
yaoh.wang3 小时前
力扣(LeetCode) 69: x 的平方根 - 解法思路
python·算法·leetcode·面试·职场和发展·牛顿法·二分法
!停3 小时前
数据在内存中的存储(2)
开发语言·c++·算法