举个例子:
待排序数组: int a[] ={1, 2, 2, 3, 4, 5, 6};
待排序数组: int a[] ={1, 2, 2, 3, 4, 5, 6};
在快速排序的随机选择比较子(即pivot)阶段:
若选择a[2](即数组中的第二个2)为比较子,,而把大于等于比较子的数均放置在大数数组中,则a[1](即数组中的第一个2)会到pivot的右边, 那么数组中的两个2非原序(这就是“不稳定”)。
若选择a[1]为比较子,而把 小于等于 比较子的数均放置在小数数组中,则数组中的两个2顺序也非原序这就说明,quick sort是不稳定的。
原文链接:http://blog.csdn.net/wusuopubupt/article/details/22743315