标题:这个关于快速排序的题目是哪个答案啊?
只看楼主
xw2014
Rank: 1
等 级:新手上路
帖 子:54
专家分:0
注 册:2006-1-17
 问题点数:0 回复次数:1 
这个关于快速排序的题目是哪个答案啊?
在下列序列中,( )是执行第一趟快速排序后所得的序列.
A.[93,73] [68,11,69,23,18]
B.[68,11,69,23,18] [93,73]
C.[68,11,18,69] [23,93,73]
D.[68,11,69,23] [18,93,73]

最好把原理也说说,怎么来的
搜索更多相关主题的帖子: 最好 
2007-12-25 20:28
naski
Rank: 1
等 级:新手上路
帖 子:35
专家分:0
注 册:2007-7-5
得分:0 
快速排序算法是基于分治策略的,设待求解一个序列p[m...n],则可以分为3个步骤求解:
1、分解阶段:将p[m...n]序列拆分成2个非空子序列p[m...k]和p[k+1....n],使p[m..k]中任一元素的值不大于p[k+1..n]中任一元素的值。
2、递归求解阶段:使用递归方法分别对p[m...k]和p[k+1....n]排序;
3、合并阶段:由于两个子序列分别完成了排序,则他们在完成排序后不需要操作即可合并完成序列p[m....n]的排序。
根据以上的快速排序的原理,答案B符合(做完快速排序第一趟分解阶段工作后,两个子序列中,第1个子序列的任意一个元素均小于第2个子序列的任意一个元素)。

    │      ∠_
丿亅\   ├─┤
            └─┘
2007-12-25 21:36



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-194270-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.128666 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved