力扣热题100------136.只出现一次的数字

给你一个 非空 整数数组 nums ,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。

你必须设计并实现线性时间复杂度的算法来解决此问题,且该算法只使用常量额外空间。

示例 1 :

输入:nums = [2,2,1]

输出:1

示例 2 :

输入:nums = [4,1,2,1,2]

输出:4

示例 3 :

输入:nums = [1]

输出:1

提示:

1 <= nums.length <= 3 * 104

-3 * 104 <= nums[i] <= 3 * 104

除了某个元素只出现一次以外,其余每个元素均出现两次。

思路:采用异或运算 定义一个a的值为0, 遍历整个数组 让每个元素与a进行异或运算 两个相同的数字出现 就会被消除 因为两个相同的数字的异或运算结果为0 那么剩下的a就是只出现一次的数字

java 复制代码
class Solution {
    public int singleNumber(int[] nums) {
        int a=0;
        for(int i=0;i<nums.length;i++){
            a ^=nums[i];
        }
        return a;
    }
}
相关推荐
青瓷程序设计5 分钟前
【基于 YOLO的咖啡豆果实成熟度检测系统】+ Python+算法模型+目标检测+2026原创
python·算法·yolo
程序员Shawn6 分钟前
【机器学习 | 第七篇】- 聚类算法
算法·机器学习·聚类
地平线开发者12 分钟前
征程 6X watchdog 问题分析
算法·自动驾驶
像素猎人14 分钟前
蓝桥杯OJ716【限定第一步和最后一步爬台阶的经典例题】【动态规划】
c++·算法·动态规划
Q741_14718 分钟前
每日一题 力扣 3474. 字典序最小的生成字符串 贪心 字符串 C++ 题解
c++·算法·leetcode·贪心
人道领域20 分钟前
LeetCode【刷题日记】:螺旋矩阵逆向全过程,边界缩进优化
算法·leetcode·矩阵
ALex_zry22 分钟前
物联网数据质量控制系统设计:质控算法与实现
物联网·算法·struts
EQUINOX126 分钟前
货物运输问题,前缀和优化dp,[牛客周赛137 F-小苯的糖果盒]
算法·动态规划
小此方28 分钟前
Re:从零开始的 C++ STL篇(九)AVL树太“较真”,红黑树更“现实”:一文讲透工程中的平衡之道
开发语言·数据结构·c++·算法·stl
地平线开发者28 分钟前
多 Batch 量化校准与单 Batch 校准的数值差异
算法·自动驾驶