黑马程序员技术交流社区

标题: 不用第三方变量而实现两个元素的交换 [打印本页]

作者: 张冬冬    时间: 2011-11-1 14:58
标题: 不用第三方变量而实现两个元素的交换
今天想了一个问题,一般实现两个元素的值的交换都是定义一个第三方变量,
怎么样做在不借助第三方变量的情况下,实现两个元素值的交换?
作者: 何周舟    时间: 2011-11-1 15:25
【两个数互换值】
n=n^m
m=n^m  
n=n^m
异获
毕向东_Java基础里面有
作者: 何周舟    时间: 2011-11-1 15:26
本帖最后由 何周舟 于 2011-11-1 15:27 编辑

个人理解这样
n=n^m
m=n^m^m  = n
n=n^m^n  = m
一个数异获同一个数两次等于原数
作者: 祁焱    时间: 2011-11-1 16:50
菜鸟版:
            int temp = a;

            a = b;

            b = temp;
入门版:
           a = a + b;

           b = a -  b;

           a = a - b;
高手版:
          a  = a ^ b;

          b =  a ^ b;

          a  = a ^ b;
专家版:
         a = b + 0 * (b = a);
黑马四届里面有这个问题




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2