posts - 495,  comments - 11,  trackbacks - 0

通常交换两个整型变量,经常会如下做:

public void swap(int a, int b) {
    int t = a;// 使用第三个变量t

    a = b;

    b = t;
}

下面介绍两种不借助变量,让两个整型变量交换的方法

方法一:借助代数运算

public void swap(int a, int b) {
     a = a + b;

     b = a - b; // 这个时候a=a+b,b=a

     a = a - b; // a = b
}

方法二:借助^异或运算

public void swap(int a, int b) {
     a = a^b;

     b = a^b;

     a = a^b;
}

posted on 2009-08-20 23:36 jadmin 阅读(80) 评论(0)  编辑  收藏

只有注册用户登录后才能发表评论。


网站导航: