题目要求:有两个整数变量a=6;b=100,交换两个变量的值。
解法1:使用其他变量
c = b
b = a
a = c
解法2:不使用临时变量
a = a + b
b = a - b
a = a - b
解法3:Python专有,利用元组
a, b = b, a
解法4:使用异或运算
a = a ^ b
b = a ^ b
a = a ^ b
异或运算满足交换律和结合律。
注意:a和b的值可以相等,但是要保证a和b在内存中是不同的地址空间,同一块内存空间进行异或值会变为0。
N ^ N = 0
N ^ 0 = N