【CSDN 每日一练 ★☆☆】【位运算】只出现一次的数字

【CSDN 每日一练 ★☆☆】【位运算】只出现一次的数字

题目

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

说明:

你的算法应该具有线性时间复杂度。 你可以不使用额外空间来实现吗?

示例

示例 1:

输入: 2,2,1

输出: 1

示例2:

输入: 4,1,2,1,2

输出: 4

思路
  • 相同的数字异或为0
  • 任何数与0异或等于该数
实现
java 复制代码
public int singleNumber(int[] nums) {
    int res = 0;
    for (int num : nums) {
        res ^= num;
    }
    return res;
}
相关推荐
AgentMaster18 分钟前
数据治理工具选型指南:一套可复用的四阶段决策框架
大数据·数据结构·人工智能·算法
liliangcsdn36 分钟前
最终留出样本/样本外测试集-holdout解读
算法
爱敲代码的小黄1 小时前
机器学习入门:从数据、训练到业务决策
算法
数据知道1 小时前
哈希与密码存储——bcrypt、Argon2、盐值与彩虹表
网络·算法·安全·网络安全·密码学·哈希算法
haon11221 小时前
树模型在信贷风控怎么用——从决策树到 XGBoost
大数据·人工智能·算法·决策树·机器学习·数据挖掘
wordbaby1 小时前
BM25 是什么?手把手拆解搜索引擎的核心算法
人工智能·算法
阳明山水1 小时前
从相关到因果:预测科学的因果转向与可识别性挑战
人工智能·深度学习·算法·机器学习·架构
TDengine (老段)1 小时前
TDgpt 使用 — 部署、SQL、算法
大数据·数据库·sql·算法·时序数据库·tdengine·涛思数据