假设两个数值型变量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;
这种方法最可靠。
目前水平只知道前者比后者节省空间,但是这两种方法的时间效率,有待查证,大牛看到,可以帮忙分析一下,需要查汇编代码。