LeetCode编程练习 - Single Number学习心得

探讨了如何在数组中找到仅出现一次的整数,其中所有其他整数都出现了两次。介绍了使用异或运算实现线性时间复杂度且不使用额外内存的方法。

题目:

       Given an array of integers, every element appearstwice except for one. Find that single one.

       Note:
       Your algorithm should have a linear runtime complexity. Could you implement it without using extra memory?


思路:

     判断值是否相同,若不相同便赋值。但是输出值不符

   错误代码:


    查看解决方案,解决方案中用到了XOR(异或)运算,n表示数组中的元素,0^N=N,N^N=0,N1^N1^N2^……^Nx^Nx^N=(N1^N1)^(N2^N2)^……^^N(Nx ^ Nx)= 0^0^……^0^N=N,把相同项消去。我的思路应该算是对的,但是我没有考虑到指定的数与所有的元素作对比,只是实现了前后元素的比较,解决方案中在定义变量的时候就已经定义了条件。

     


    显示结果:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值