黃大米的學習日誌
2011年11月14日 星期一
如何交換兩個變數,而不動用第三個變數? (C/C++) (C) (.NET) (C#)
http://www.cnblogs.com/oomusou/archive/2007/09/09/887337.html
若要兩數交換,可以這樣寫。
x
=
x xor y
y
=
x xor y
x
=
x xor y
但執行速度上會比使用暫存變數來的慢些!
public class TestCode {
public static void main(String[] args) {
int A = 3;
int B = 7;
System.out.println("A:" + A + " B:" + B);
A = A ^ B ;
B = A ^ B ;
A = A ^ B ;
System.out.println("A:" + A + " B:" + B);
);
}
}
沒有留言:
張貼留言
較新的文章
較舊的文章
首頁
訂閱:
張貼留言 (Atom)
沒有留言:
張貼留言