今天在重新学习排序算法时,遇到了一个大坑。 同样一段快排代码:分别使用两种swap(交换两个数)方法,结果迥然不同。下面我先演示一下: 第一种swap算法及排序结果: void swap(int * array, int x, int y) { int temp = 0; temp = array[x]; array[x] = array[y]; array[y] = temp; } 很常规的算法,结果也完全正确,下面,就是见证奇迹的时刻: 第二种swap算法及排序结果: void swap(int * array, int x, int y) { a...