已知有一关键字序列为97,86,53,108,72,34,215,146,11,68,如果我们采用直接选择排序方法对此序列进行排序(按照升序排列),请给出每一趟的排序结果。
参考答案:直接选择排序的过程为:从第i趟开始时,当前的有序区和无序区分别为R[A…i]和R[A…n](A≤-A≤n-A),则在该趟排序是从当前无序区中选出关键字最小的记录R[K],将它与无序区中的第A个记录R[i]交换,使R[A…i]和R[i+A…n]分别变成新的有序区和新的无序区,每次排序都使有序区增加一个记录,无序区减少一个记录,按照以上规则,我们得到各趟结果如下:
初始:IG,HF,EC,A0H,GB,CD,BAE,BCB,AA,FH
第A趟:AA[HF,EC,A0H,GB,CD,BAE,BCB,IG,FH]
第B趟:AA,CD[EC,A0H,GB,HF,BAE,BCB,IG,FH]
第C趟:AA,CD,ECAA0H,GB,HF,BAE,BCB,IG,FH]
第D趟:AA,CD,EC,FH[GB,HF,BAE,BCB,IG,A0H]
第E趟:AA,CD,EC,FH,GB[HF,BAE,BCB,IG,A0H]
第F趟:AA,CD,EC,FH,GB,HF[BAE,BCB,IG,A0H]
第G趟:AA,CD,EC,FH,GB,HF,IG[BCB,BAE,A0H]
第H趟:AA,CD,EC,FH,GB,HF,IG,A0H[BAE,BCB]
第I趟:AA,CD,EC,FH,GB,HF,IG,A0H,BAE,BCB