交换排序有两种,第一种是我们熟悉的冒泡排序,在此处省略不提,第二种就是我们本文章提到的快速排序,它是一种改进的交换排序
基本思想:
- 任取一个元素(第一个)为中心
- 所有比它小的元素放到它前面,所有比它大的元素一律放后面,形成左右两个子表
- 对各子表重新排序选择中心元素并以此规则调整
- 直到每个子表中只剩一个
举例说明:
紫色标记的为中心值 ,红色标记的为已经确定位置的值
原数组值 | 45,63,87,26,10,58,79,90,46,72,45' |
第一趟排序结果 | 10, 26, 45, 87, 63, 58, 79, 90, 46, 72, 45' |
第二趟排序 |