十堰建网站/泉州百度首页优化
交换两个数的值——核心算法
- 赋值运算
- 算数运算
- 位运算
赋值运算
int a, b, temp;a = 10;b = 5;temp = a;a = b;b = temp;
算数运算
思路一
int a, b;a = 10;b = 2;a = b - a;//a=-8,b=10b = b - a;//a=-8,b=10a = b + a;//a=2,b=10 交换成功
思路二
int a = 3, b = 5;a = a + b; //a = 3 + 5b = a - b; //b = 8 - 5a = a - b; //a = 8 - 3
思路三
int a = 3, b = 5;a = a * b; //a = 3 * 5;b = a / b; //b = 15 / 3;a = a / b; //a = 15 / 5;
位运算
int a, b;a = 20; b = 2;a = a ^ b;//a=10100,b=0010,两者相异或的结果是10110,并保存在a中。b = a ^ b;//a=10110,b=0010,两者相异或的结果是10100,并保存在b中,换成二进制是20a = a ^ b;//a=10110,b=10100,两者相异或的结果是00010,保存在a中,换成十进制是2