1 2 3 4 5 6 7 8 9 10 |
|
黄舟2017-04-17 17:29:35
插入排序,上面的交换是不用中间变量,但是也存在一个问题,会存在可能溢出的情况,因为a=a+b可能导致溢出,另外一种不用中间变量的方式是采用异或:a=a^b ,b=a^b,a=a^b 这种方式不适合于浮点数,总之,只是采用了不用任何额外的空间实现交换数据而已。。。重点还是在算法本身。。
阿神2017-04-17 17:29:35
插入排序
1 2 3 |
|
这段代码就是交换的意思,不用中间变量
ringa_lee2017-04-17 17:29:35
插入排序,第二层循环里面那段代码,看着估计有点乱,但简化一下看就相当于:
a = a + b;
b = a – b;
a = a – b;
*就是a和b的值交换的意思,看不明白可以代入具体数字去看看。