编程论坛
注册
登录
编程论坛
→
C++教室
新手求教
yew2012
发布于 2012-12-01 18:22, 339 次点击
不用第三个变量实现俩个变量之间的交换,网上的方法很多,但我想找一个最好,没有什么溢出之类的问题的算法啊。求大神指点。。。。。。。。。。
7 回复
#2
azzbcc
2012-12-01 20:03
若是int型的话
a = a + b;//用 a储存两数之和
b = a - b;//用和减去未改变的 b,得到原 a值,赋给 b了
a = a - b;//用和减去新 b(即原 a)的到原 b值,赋给 a
#3
music1273
2012-12-01 21:51
长见识
#4
yew2012
2012-12-01 22:38
恩恩 这个在网上看过额
#5
yew2012
2012-12-01 22:43
求问那个异或运算及其解释啊
#6
azzbcc
2012-12-02 00:09
a = a ^ b;
b = a ^ b;
a = a ^ b;
原理:a ^ x ^ x = a;
举例:5:110 6:111
a = 110 ^ 111 = 001
b = 001 ^ 111 = 110
a = 001 ^ 110 = 111
#7
yew2012
2012-12-02 00:26
恩恩 谢啦
#8
似水流年去
2012-12-05 16:05
又长知识了。
1