Leetcode面试经典150题-136.只出现一次的数字

解法都在代码里,不懂就留言或者私信

这个题不知道为啥会考,过于简单了,我解题+写注释用了两分钟不到,5行代码。。。

java 复制代码
class Solution {
    public int singleNumber(int[] nums) {
        /**这个题目确实时间的题,根据位运算法则我们知道1.两个相同的数异或之后是0
        2.任何数和0异或之后是它本身
        所以我们考虑拿所有的数进行异或,因为其他数都出现两次,所以其他数异或完成之后都是0
        而我们要找的那个数是出现一次的,它和其他数异或的结果(0)异或之后就是它自己*/
        int ans = 0;
        for(int num : nums) {
            ans ^= num;
        }
        return ans;
    }
}

运行结果

相关推荐
秋天的怀念_David1 小时前
算法一千零一夜 · 作品相关:版权与致谢声明
程序人生·算法·学习方法
香蕉大香蕉(06敬畏市场)2 小时前
MySQL 单点详解(03)
java·数据库·mysql·面试·八股·大厂实习
揽星河..2 小时前
【C语言】数组
c语言·开发语言·算法
careathers2 小时前
【数据结构】基于比较的排序算法 - 选择排序
数据结构·算法·排序算法
听风若依2 小时前
C++模板初阶
c++·算法
纪念 2293 小时前
C++ 算法(模拟)
开发语言·c++·算法
揽星河..3 小时前
【C语言】函数
c语言·算法
zwc32104320553 小时前
Day 2:图像内存、数据类型与stride
c++·人工智能·opencv·算法·计算机视觉
重生之小比特3 小时前
【算法拾光】模拟|提莫攻击 + N 字形变换
算法·模拟
道尔柯南3 小时前
C++ 内存管理详解:从 malloc/free 到 new/delete
c++·面试