给定一个关键字序列(24,19,32,43,38,6,13,22),进行快速排序,扫描一趟后的结果是?
来源:学生作业帮助网 编辑:作业帮 时间:2024/07/02 17:57:01
![给定一个关键字序列(24,19,32,43,38,6,13,22),进行快速排序,扫描一趟后的结果是?](/uploads/image/z/2593419-51-9.jpg?t=%E7%BB%99%E5%AE%9A%E4%B8%80%E4%B8%AA%E5%85%B3%E9%94%AE%E5%AD%97%E5%BA%8F%E5%88%97%EF%BC%8824%2C19%2C32%2C43%2C38%2C6%2C13%2C22%EF%BC%89%2C%E8%BF%9B%E8%A1%8C%E5%BF%AB%E9%80%9F%E6%8E%92%E5%BA%8F%2C%E6%89%AB%E6%8F%8F%E4%B8%80%E8%B6%9F%E5%90%8E%E7%9A%84%E7%BB%93%E6%9E%9C%E6%98%AF%3F)
给定一个关键字序列(24,19,32,43,38,6,13,22),进行快速排序,扫描一趟后的结果是?
给定一个关键字序列(24,19,32,43,38,6,13,22),进行快速排序,扫描一趟后的结果是?
给定一个关键字序列(24,19,32,43,38,6,13,22),进行快速排序,扫描一趟后的结果是?
以下上下对应
A[0] 、 A[1]、 A[2]、 A[3]、 A[4]、 A[5]、 A[6]、A[7]:
24 19 32 43 38 6 13 22
初始关键数据KEY=A[0]=24,第一轮排序中一直不变
第一次从后往前搜,A[0]>A[7],变换,24 22对换,A[0]=22,A[7]=24,KEY=A[7]=24
结果:22 19 32 43 38 6 13 24
第二次从前往后搜,A[1]A[7],变换,32 24对换,A[2]=24,A[7]=32,KEY=A[2]=24
结果:22 19 24 43 38 6 13 32
第三次从后往前搜,A[2]>A[6],变换,24 13对换,A[2]=13,A[6]=24,KEY=A[6]=24
结果:22 19 13 43 38 6 24 32
第四次从前往后搜,A[3]>A[6],变换,43 24对换,A[3]=24,A[6]=43,KEY=A[3]=24
结果:22 19 13 24 38 6 43 32
第五次从后往前搜,A[3]>A[5],变换,24 6对换,A[3]=6,A[5]=24,KEY=A[5]=24
结果:22 19 13 6 38 24 43 32
第六次从后往前搜,A[4]>A[5],变换,38 24对换,A[4]=24,A[5]=38,KEY=A[4]=24
结果:22 19 13 6 24 38 43 32
即最终排序结果为:22 19 13 6 24 38 43 32
之后对24两边的子集分别按以上方法排序{22 19 13 6} 24 {38 43 32}