| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 853 人关注过本帖
标题:这个关于快速排序的题目是哪个答案啊?
只看楼主 加入收藏
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
快速回复:这个关于快速排序的题目是哪个答案啊?
数据加载中...
 
   



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

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