如果不引用第三个变量,就能直接交换两个变量的值?

来源:互联网 发布:yy协议软件手机版 编辑:程序博客网 时间:2024/05/19 21:17
方法一:
var a=1;
var b=2;
a=a+b;
b=a-b;
a=a-b;
输出a,b可以发现两值已经交换


方法二:
//异或操作方法
var a=1;
var b=2;
a=a^b;
b=a^b;
a=a^b;
输出a,b可以发现两值已经交换
交换流程如下:
a=1 0000 0001
b=2 0000 0010
a=a^b   0000 0011
b=a^b 0000 0001
a=a^b 0000 0010

基于以上分析,可以知道许多开发技巧可以来源于数学理论,这种基于数学理论的应用在技术开发上可以弄出很多东西来,在实际的应用中也有着现实性的意义。虽然“不用第三个变量,直接交换两个变量的值”的方法不是我想到的,不过相信有了强大数学理论背景之后,在开发以及其他创造性工作中,只要注意培养这种应用意识,我们也能创造出这种“伎俩”来,只要善于思考,善于总结,创造性思维还是可以培养出来的。
阅读全文
1 0
原创粉丝点击