一、实现两数交换的三种方法
1、定义临时变量(常用)
- 缺点:
- 需要开辟更多的内存
- 优点:
- 可以支持多种数据类型
int num1 = 11, num2 = 33;
//定义临时变量
int temp = num1;
num1 = num2;
num2 = temp;
2、将两个数进行加减操作
- 优点:
- 不用定义临时变量,节省空间
- 缺点:
- 两数相加时可能超出存储范围
- 只适用于数值类型
int num1 = 11, num2 = 33;
num1 = num1 + num2;
num2 = num1 - num2;
num1 = num1 - num2;
3、使用位运算符 ^ 异或(不常用)
- 优点:
- 不用定义临时变量,节省空间
- 不会超出范围
- 效率高
- 缺点:
- 只适用于数值类型
int num1 = 11, num2 = 33;
num1 = num1 ^ num2;
num2 = num1 ^ num2;
num1 = num1 ^ num2;