首页 > 其他分享 >异或求解LeetCode--只出现一次的数字

异或求解LeetCode--只出现一次的数字

时间:2024-12-01 14:04:15浏览次数:11  
标签:交换律 数字 -- 复杂度 int 异或 结合律 LeetCode

只出现一次的数字

136. 只出现一次的数字 - 力扣(LeetCode)

思路

根据异或的性质:0^n=n和n^n=0以及异或满足交换律和结合律可知,一个数组中偶数个相同数字异或的结果为0,奇数个相同数字异或的结果为该数字,所以要找出现奇数次的数字,只需求一下整个数组异或的结果即可

代码

class Solution {
	public int singleNumber(int[] nums) {
		int result=0;
		for(int i=0;i<nums.length;i++){
			result^=nums[i];
		}
		return result;
	}
}

复杂度

时间复杂度:O(n)

本题算法核心

异或的性质:

1.0^n=n

2.n^n=0

3.交换律:a^b=b^a

4.结合律:(a^b)^c=a^(b^c)

b^a^b=a^(b^b)=a^0=a

标签:交换律,数字,--,复杂度,int,异或,结合律,LeetCode
From: https://blog.csdn.net/m0_73694177/article/details/144160956

相关文章

  • 【Java毕业设计】基于Springcloud+SpringBoot+Vue的智慧养老系统
    源码获取:https://download.csdn.net/download/u011832806/89426620基于Springcloud+SpringBoot+Vue的智慧养老系统开发语言:Java数据库:MySQL技术:Springcloud+SpringBoot+MyBatis+Vue.js+Eureka+elementUI工具:IDEA/Ecilpse、Navicat、Maven系统演示视频:链接:https://pan.b......
  • 洛谷P1880 [NOI1995] 石子合并 题解
    此题解以纪念我终于差不多大概搞懂区间dp了(插个存档点,到时候忘了再回来看看)。P1880[NOI1995]石子合并题解在做这道题之前,可以看看P1775石子合并(弱化版)(一道题解帮你搞定两道题,多划算)。P1775石子合并(弱化版)形式化的题面一堆石头摆在你面前,让你把他们扔到一起,每次扔......
  • springcloud组件openFeign
    openFeign是什么?1、openFeign是个声明式WebServer客户端,使用openFeign让编写WebService客户端更加简单2、它的使用方法是定义一个服务接口然后在上面添加注解3、openFeign也支持可拔插式的编码器和解码器4、SpringCloud对openFeign进行了封装使其支持了SpringMvc标准注解......
  • Seata事务隔离
    本文目标:帮助用户明白使用Seata AT模式时,该如何正确实现事务隔离,防止脏读脏写。希望读者在阅读本文前,已阅读过seata官网中对AT模式的介绍,并且对数据库本地锁有所了解(例如,两个事务同时在对同一条记录做update时,只有拿到recordlock的事务才能更新成功,另一个事务在recordloc......
  • Seata使用Apollo作为配置中心
    预备工作​当您将apollo-client整合到您的Seata工程之前,请确保后台已经启动Apollo服务。如果您尚且不熟悉Apollo的基本使用的话,可先行参考 Apollo快速入门。建议使用Apollo 1.6.0 及以上的版本。快速上手​Seata融合Apollo配置中心的操作步骤非常简单,大致步骤......
  • C++编程:通过简单实现理解CyberRT的DataVisitor和DataDispatcher
    文章目录0.引言1.定义DataVisitor接口2.实现DataDispatcher3.创建具体的DataVisitor4.类关系图5.测试示例6.编译和运行0.引言本文简单实现类似CyberRT的DataVisitor和DataDispatcher,使得数据能够被分发给多个订阅者(访客)。1.定义DataVisitor接......
  • 计算机基础与程序设计第十周总结
    学期(如2024-2025-1)学号(如:20241300)《计算机基础与程序设计》第X周学习总结作业信息这个作业属于哪个课程https://edu.cnblogs.com/campus/besti/2024-2025-1-CFAP这个作业要求在哪里https://edu.cnblogs.com/campus/besti/2024-2025-1-CFAP/homework/13273这个作......
  • node.js毕设体育馆在线预约管理系统程序+论文
    本系统(程序+源码+数据库+调试部署+开发环境)带文档lw万字以上,文末可获取源码系统程序文件列表开题报告内容一、选题背景关于体育馆在线预约管理系统的研究,现有研究多集中在大型综合性场馆的整体运营管理方面,专门针对包含会员、收银员、教练等多种角色以及场地、器材相关功......
  • node.js毕设体育活动信息平台_程序+论文
    本系统(程序+源码+数据库+调试部署+开发环境)带文档lw万字以上,文末可获取源码系统程序文件列表开题报告内容一、选题背景关于体育活动信息平台的研究,现有研究主要以体育赛事管理或体育健身APP等单一功能为主,专门针对整合多种体育活动相关信息(如学生、体测信息、体育场地、比......
  • 模组管理器指南
    在MO2中选择以skse启动......