| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1493 人关注过本帖
标题:快速排序
取消只看楼主 加入收藏
xupeng
Rank: 1
等 级:新手上路
帖 子:4049
专家分:0
注 册:2006-2-12
收藏
 问题点数:0 回复次数:2 
快速排序
oC1RESpE.rar (164.25 KB) 快速排序


这是最快的排序算法!
搜索更多相关主题的帖子: 快速 
2006-07-06 08:40
xupeng
Rank: 1
等 级:新手上路
帖 子:4049
专家分:0
注 册:2006-2-12
收藏
得分:0 
楼上的能否弄个代码上来啊!

反清复明 http://xupeng.
2006-07-06 13:25
xupeng
Rank: 1
等 级:新手上路
帖 子:4049
专家分:0
注 册:2006-2-12
收藏
得分:0 
以下是引用ytyt654在2006-7-6 10:39:57的发言:
该算法还可以进一步优化。

快速排序算法平均情况下的时间复杂度为O(nlog2底n),最坏情况下的时间复杂度为O(n的平方)。

最坏情况的发生与轴值的选择有关。为了避免最坏情况的发生,对轴值的选择可以采用随机确定法(从待排序子序列中随机选择一个元素作为轴值)和三者取中法(选取待排序子序列中第一、中间和最后,三个元素中值在中间的作为轴值)。

当待排序子序列的长度小于一定值时,对其递归调用快速排序,执行速度并不快。一个可行的优化措施是,当子序列的长度小于9时,不对子序列执行任何操作,这样调用快速排序算法后得到的是一个近似有序的序列,最后对该序列执行一次直接插入排序(对近似有序序列执行直接插入算法,速度很快)。

上面两种优化措施,不能改变快速排序算法在平均情况下的时间复杂度,只是比没有优化的程序执行稍快一些。

比较排序算法的时间复杂度的下限是O(nlog2底n),非比较排序算法的时间复杂度可以达到O(n)。

快速排序算法不能称为最快的排序算法,某些情况下使用非比较排序算法更快,但非比较排序算法的应用有一些限制条件,所以称快速排序算法为最实用的排序算法还是比较妥当的。


你避免了最遭情况,也同时失去了最好情况,在说了,频繁使用随即函数要消耗大量CPU资源,你这叫出里不掏好
有本事你弄个代码上来呀
你这套理论是你的导师交的吧导师,导师,误导人的老师


反清复明 http://xupeng.
2006-09-10 20:34
快速回复:快速排序
数据加载中...
 
   



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

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