请教:如何不用第三个变量将两个整型的值互换(面试题) 某日去一家公司的面试题:任意定义两个整型,在不用第三个变量的情况下,用与、或、异或将他们的值互换,有哪位算法高手能告诉我下吗??小弟这里先谢了。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 a=3;b=4;a=a+b; 7b=a-b; 3a=a-b; 4老题目了。 int a, b; a = 10; b=20; a = a + b; b = a - b; a = a - b; Console.WriteLine("a:{0} b:{1}", a, b); *****************************************************************************欢迎使用CSDN论坛专用阅读器 : CSDN Reader(附全部源代码) 最新版本:20070212http://www.cnblogs.com/feiyun0112/archive/2006/09/20/509783.html int A = 1;int B = 5;//A = A + B;//B = A - B;//A = A - B;A ^= B;B = A ^ B;A ^= B;Text = string.Format("A={0},B={1}", A, B); 老掉牙的程序原理就是//A = A + B;//B = A - B;//A = A - B;未避免益处,这里用异或A = A ^ B;B = A ^ B;A = A ^ B; x= x^y;y= y^x;x= x^y; a=3;b=4;a=a+b; 7b=a-b; 3a=a-b; 4老题目了。--------------------------和我想法一样 int a,ba=a+b;b=a-b;a=a-b;看来面试题也是相互抄袭呀!老题目 看一下这个http://community.csdn.net/Expert/topic/4899/4899577.xml?temp=.2095148 这两句是比较经典a = b | (b = a) & 0;b = a + (a = b) * 0; x= x^y;y= y^x;x= x^y; x= x^y;y= y^x;x= x^y; a^=b^=a^=b;c#不行,必须分开写 int x,y;x=x+y;y=x-y;x=x-y;即可 c#如何给struct数组赋值 C#中有关规则与不规则数组的问题 在线`急等`` 怎么样从数据库中取出数据放入模板呢?请高手指点!急!!!! 插件结构能解决一切吗?讨论兼散分 TCP socket 编程,只能发送数据,但收不到数据 C#winform页面显示问题 如何使用webclient通过代理服务器访问URI? 小弟的几个模糊问题?????????/ 何将一个非当前窗口激活为当前窗口? DataGridView控件里编辑某个单元格后,按Enter键,怎么到右边单元格? 关于Object对象转换的问题
b=4;
a=a+b; 7
b=a-b; 3
a=a-b; 4老题目了。
a = 10;
b=20;
a = a + b;
b = a - b;
a = a - b;
Console.WriteLine("a:{0} b:{1}", a, b);
*****************************************************************************
欢迎使用CSDN论坛专用阅读器 : CSDN Reader(附全部源代码) 最新版本:20070212http://www.cnblogs.com/feiyun0112/archive/2006/09/20/509783.html
int B = 5;
//A = A + B;
//B = A - B;
//A = A - B;
A ^= B;
B = A ^ B;
A ^= B;Text = string.Format("A={0},B={1}", A, B);
//A = A + B;
//B = A - B;
//A = A - B;未避免益处,这里用异或A = A ^ B;
B = A ^ B;
A = A ^ B;
x= x^y;
y= y^x;
x= x^y;
b=4;
a=a+b; 7
b=a-b; 3
a=a-b; 4老题目了。
--------------------------
和我想法一样
a=a+b;
b=a-b;
a=a-b;
看来面试题也是相互抄袭呀!老题目
http://community.csdn.net/Expert/topic/4899/4899577.xml?temp=.2095148
a = b | (b = a) & 0;
b = a + (a = b) * 0;
y= y^x;
x= x^y;
y= y^x;
x= x^y;
c#不行,必须分开写
x=x+y;
y=x-y;
x=x-y;
即可