最近Leetcode举办了一个为期一个月的活动,每天会推出一道题目。最近这段时间正好有空,所以打算跟着参加一下,顺便写一下题解。使用的语言为C++。
题意
题目链接:Single Number
给一个非空的数组,其中有1个元素出现了1次,其他的都出现2次。时间要求为线性,不允许使用额外内存,求出现1次的元素。
思路
题目保证数组非空,所以不需要特殊处理。
两个相同的数异或等于0,因此我们可以将数组所有元素异或起来,最后得到的值即为出现1次的元素。
代码
1 | class Solution { |