定个小目标之每天刷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)全球极客挚爱的技术成长平台

相关推荐
有意义9 小时前
深度拆解分割等和子集:一维DP数组与倒序遍历的本质
前端·算法·面试
xlp666hub11 小时前
Leetcode第二题:用 C++ 解决字母异位词分组
c++·leetcode
用户7268761033711 小时前
解放双手的健身助手:基于 Rokid AR 眼镜的运动计时应用
算法
Wect11 小时前
LeetCode 17. 电话号码的字母组合:回溯算法入门实战
前端·算法·typescript
xlp666hub1 天前
Leetcode第一题:用C++解决两数之和问题
c++·leetcode
ZhengEnCi1 天前
08c. 检索算法与策略-混合检索
后端·python·算法
程序员小崔日记1 天前
大三备战考研 + 找实习:我整理了 20 道必会的时间复杂度题(建议收藏)
算法·408·计算机考研
lizhongxuan1 天前
AI小镇 - 涌现
算法·架构
AI工程架构师1 天前
通常说算力是多少 FLOPS,怎么理解,GPU和CPU为什么差异这么大
算法
祈安_1 天前
Java实现循环队列、栈实现队列、队列实现栈
java·数据结构·算法