定个小目标之每天刷LeetCode热题(12)

这是一道简单题,使用位运算中的异或运算即可,异或运算有以下性质:

1、任何数异或 0 结果仍然是原来的数,即 a⊕0=a

2、任何数和其自身做异或运算,结果是 0

所以我们只需要让数组里的所有元素进行异或运算得到的结果就是那个只出现一次的数字,代码如下所示

java 复制代码
class Solution {
    public int singleNumber(int[] nums) {
        int single = 0;
        for (int num : nums) {
            single ^= num;
        }
        return single;
    }
}

题目链接:题单 - 力扣(LeetCode)全球极客挚爱的技术成长平台

相关推荐
YY_TJJ14 分钟前
算法题——贪心算法
算法·贪心算法
C++ 老炮儿的技术栈20 分钟前
include″″与includ<>的区别
c语言·开发语言·c++·算法·visual studio
RainbowC01 小时前
GapBuffer高效标记管理算法
android·算法
liu****1 小时前
10.queue的模拟实现
开发语言·数据结构·c++·算法
mit6.8241 小时前
10.17 枚举中间|图论
算法
小龙报1 小时前
《彻底理解C语言指针全攻略(6)-- qsort、sizeof和strlen》
c语言·开发语言·职场和发展·创业创新·学习方法·业界资讯·visual studio
让我们一起加油好吗1 小时前
【基础算法】01BFS
数据结构·c++·算法·bfs·01bfs
孤狼灬笑2 小时前
机器学习十大经典算法解析与对比
人工智能·算法·机器学习
1白天的黑夜12 小时前
递归-24.两两交换链表中的节点-力扣(LeetCode)
数据结构·c++·leetcode·链表·递归
1白天的黑夜13 小时前
递归-206.反转链表-力扣(LeetCode)
数据结构·c++·leetcode·链表·递归