可以利用异或运算^来实现不使用临时变量交换两个整数,进而实现不使用临时变量交换数组元素。
例如:将数组arr中下标为i和j的元素交换
arr[i] = arr[i] ^ arr[j];
arr[j] = arr[i] ^ arr[j];
arr[i] = arr[i] ^ arr[j];
或者使用C++11标准中的swap函数来实现
std::swap(arr[i], arr[j]);
上一篇:不使用临时变量交换两个数字
下一篇:不使用临时变量输出返回的一对元素