算法(位运算)

1.与

1 1 (1)

1 0 (0)

0 0  (0)

2.异或(可以理解为不进位加法)

1+1=0

0+0=0

1+0=1

性质:

(1)交换律,可任意交换运算因子的位置,结果不变

(2)结合律(即(a^b)^c == a^(b^c)

  (3)对于任何数x,都有x^x=0, x^0=x,同自己求异或为0,同0求异或为自己

(4)自反性 A^B^B=A^0=A,连续和同一个因子做异或运算,最终结果为自己

算例:

在数组长度为1001的,连续的是1到1000,只有一对数字是一样的,找出这个数

法一:异或

A^A^B^C^C=B

法二:开辟辅助空间,新建一个数组

把原题数组的元素作为辅助数组的下标,出现一次+1

要是是2,那么就是这个辅助数组为2的下标就是重复的数

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值