假設兩個數值型變量a,b實現二者值交換,可用下面兩個方法之一:
a = a + b;
b = a - b;
a = a - b;
這個方法很巧妙,但是在a和b指向同一地址時,不起作用,注意在數組排序時,不要用這樣方法,容易出錯。
另一種很傳統的方法是
tmp = a;
a = b;
b =tmp;
這種方法最可靠。
目前水平只知道前者比後者節省空間,但是這兩種方法的時間效率,有待查證,大牛看到,可以幫忙分析一下,需要查彙編代碼。
假設兩個數值型變量a,b實現二者值交換,可用下面兩個方法之一:
a = a + b;
b = a - b;
a = a - b;
這個方法很巧妙,但是在a和b指向同一地址時,不起作用,注意在數組排序時,不要用這樣方法,容易出錯。
另一種很傳統的方法是
tmp = a;
a = b;
b =tmp;
這種方法最可靠。
目前水平只知道前者比後者節省空間,但是這兩種方法的時間效率,有待查證,大牛看到,可以幫忙分析一下,需要查彙編代碼。