您的位置:首页 > 其它

不用临时变量交换两个变量的值

2006-02-15 16:10 375 查看
大家对于异或(XOR)的如下性质应该很熟悉:

(X XOR Y) XOR Y = X
(X XOR Y) XOR X = Y

我们可以利用异或(XOR)的这个性质来实现不用临时变量交换两个变量的值。具体代码很简单:

void Swap(int& x, int& y)
{
x = x ^ y;
y = x ^ y;
x = x ^ y;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: