快速排序核心思想_算法

轴点构造:(直到每个元素都成为轴点,则序列有序)

1、默认选择第一个为轴点元素(选其他的也可以)

2、初始时设置两个指针,分别指向首项和尾项;

3、从尾指针开始,比较所指向元素是否小于或等于轴点,小于或等于则赋值给头指针(此时头指针保存的元素是垃圾元素),否则指针加加

4、每次赋完值,就从另一端开始,比较指针元素和轴点元素(头指针元素大于轴点,则将头指针元素赋值给尾指针所在位置,否则指针加加。赋值之前 尾指针同样保存的是垃圾元素,即图中的黑色方块)

5、循环执行3、和4、步骤,直到begin=end

由上图可以看出,值相同得元素,相对位置发生了变化,此种为不稳定排序。