力扣136. 只出现一次的数字

Problem: 136. 只出现一次的数字

文章目录

题目描述

思路

由于题目要求使用线性时间复杂度和常量级的空间复杂度 ,再加上找重复元素 这个特性,我们可以想到使用位运算来求解:

1.任何数与其本身异或得0,任何数与0异或得到其本身

2.由于只有一个数字出现一次,其余的数均出现两次,则定义int变量temp初始化为0,循环每次与nums[i]异或,最终返回temp,即为只出现一次的数

复杂度

时间复杂度:

O ( n ) O(n) O(n);其中 n n n为数组nums的大小

空间复杂度:

O ( 1 ) O(1) O(1)

Code

cpp 复制代码
class Solution {
public:
	/// <summary>
	/// Find a number that only appears once
	/// </summary>
	/// 
	/// <param name="nums"> The given array </param>
	/// <returns> int </returns>
	int singleNumber(vector<int>& nums) {
		int temp = 0;
		for (int i = 0; i < nums.size(); ++i) {
			temp ^= nums[i];
		}
		return temp;
	}
};
相关推荐
努力努力再努力wz10 分钟前
【Linux网络系列】万字硬核解析网络层核心:IP协议到IP 分片重组、NAT技术及 RIP/OSPF 动态路由全景
java·linux·运维·服务器·数据结构·c++·python
小糖学代码17 分钟前
LLM系列:2.pytorch入门:3.基本优化思想与最小二乘法
人工智能·python·算法·机器学习·ai·数据挖掘·最小二乘法
爱写代码的倒霉蛋19 分钟前
天梯赛备赛经验分享(基础版)
经验分享·算法
f3iiish33 分钟前
2078. 两栋颜色不同且距离最远的房子 力扣
算法·leetcode
王老师青少年编程1 小时前
csp信奥赛C++高频考点专项训练之贪心算法 --【排序贪心】:拼数
c++·算法·贪心·csp·信奥赛·排序贪心·拼数
炽烈小老头1 小时前
【 每天学习一点算法 2026/04/21】螺旋矩阵
学习·算法
未来转换1 小时前
基于A2A协议的生产应用实践指南(Java)
java·开发语言·算法·agent
谭欣辰2 小时前
AC自动机:多模式匹配的高效利器
数据结构·c++·算法
joker_sxj2 小时前
论文阅读-DeepSeek-mHC
论文阅读·算法
历程里程碑2 小时前
MySQL事务深度解析:ACID到MVCC实战+万字长文解析
开发语言·数据结构·数据库·c++·sql·mysql·排序算法