1. 使用异或XOR
A = a
B = b
A = a XOR b
B = A XOR B = a XOR b XOR b = a XOR (b XOR b) = a XOR 0 = a
A = A XOR B = a XOR b XOR a = b XOR (a XOR a) = b XOR 0 = b
2. 使用加减法
A = a
B = b
A = A + B = a + b
B = A - B = a + b - b = a
B = A - B = a + b - a = b
注意的一点: 第二种可能会溢出
实现代码很简单 大家可以一试
本文介绍两种不借助额外变量实现两个数值交换的方法:一种利用异或操作,另一种采用加减法。异或方法适用于所有场景,而加减法则可能因整数溢出问题受到限制。
182

被折叠的 条评论
为什么被折叠?



