您的位置:首页 > 理论基础

一道计算机二级考试的题目

2011-03-27 00:06 281 查看
题目:两个数字,不用中间变量,怎么把它们交换?

看到这个题目,还是先楞了一下,才想到解法。

其实解法就是图形编程中常见的消去法:

B=A⊕(A⊕B)

A=A⊕(A⊕B)⊕(A⊕B)

注意:异或运算是满足交换律和结合律的,因此,A⊕(A⊕B)=(A⊕A)⊕B=0⊕B=B

在两个图像A和B重叠时,重叠部分取色用异或(A⊕B),再用A异或一下A⊕(A⊕B),就把B还原了,在图形上经常用到。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: