数据结构之快速排序
下面给出一次划分的过程:
初始关键字: [49 38 65 97 76 13 27 49']
j向左扫描 ↑ ↑
i ←j
[49 38 65 97 76 13 27 49']
↑ ↑
i j
第一次交换后: [27 38 65 97 76 13 [] 49']
i→ j
[27 38 65 97 76 13 [] 49']
i→ j
第二次交换后: [27 38 [] 97 76 13 65 49']
j向左扫描,位置不变 i ←j
第三次交换后: [27 38 13 97 76 [] 65 49']
i向右扫描,位置不变 i→ j
第四次交换后: [27 38 13 [] 76 97 65 49']
j向左扫描 i ←j
[27 38 13 49 76 97 65 49']
↑↑
基准最后位置 i j
各趟排序之后的状态:
初始关键字: [49 38 65 97 76 13 27 49']
一趟排序后: [27 38 13] 49 [76 97 65 49']
二趟排序后: [13] 27 [38] 49 [49' 65] 76 [97]
三趟排序后: 13 27 38 49 49' [65] 76 97
最后的排序结果:13 27 38 49 49' 65 76 97
*/