一天一道算法题--6.10--变量交换

本文介绍了两种不使用第三个变量进行变量交换的方法:一种利用加减运算,另一种使用位操作中的异或运算。这两种方法虽然节省了内存,但可能会降低代码的可读性。

感谢微信平台----一天一道算法题----每天多一点进步----

 

今天的 就是如何不在用第3变量的情况下 实现变量的交换..

我这边 就给出自己知道的2种了

 1 #include <stdio.h>
 2 
 3 int main()
 4 {
 5     int a=3 , b=10;
 6     a=a+b;
 7     b=a-b;
 8     a=a-b;
 9     printf( "%d %d\n",a,b );
10     getchar();
11     return 0;
12 }
View Code
 1 #include <stdio.h>
 2 
 3 int main()
 4 {
 5     int a=3 , b=10;
 6     a = a^b;
 7     b = a^b;
 8     a = a^b;
 9     printf( "%d %d\n",a,b );
10     getchar();
11     return 0;
12 }
View Code

但 为了代码 可读性 我宁愿去浪费那么一点内存 去多加一个变量....

 

转载于:https://www.cnblogs.com/radical/p/3781045.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值