分析排序算法的优劣


一  按平均时间将排序分为四类:

   (1) 平方阶(O(n2))排序:冒泡,插入,选择.
   (2) 线性对数阶(O(nlgn))排序:快速,归并,堆.
   (3) O(n1+£)阶排序, £是介于0和1之间的常数,即0<£<1: 如希尔排序
   (4) 线性阶(O(n))排序: 计数, 基数, 桶排序。
   
二  稳定性方面:
    稳定的排序算法:冒泡,选择,插入,归并,计数,基数,桶排序.
    非稳定排序算法:快速,堆,希尔排序.


三  是否原地排序:
      原地排序:冒泡,选择,插入,快速,堆,希尔排序.
      非原地排序:归并,计数,基数,桶排序。
   
四  不同条件下,排序方法的选择
      (1)若n较小(如n≤50),可采用插入或选择排序.
         当记录规模较小时,插入排序较好;否则因为选择移动的记录数少于插人,应选选择排序为宜.
      (2)若文件初始状态基本有序(指正序), 插人、冒泡或随机的快速排序.
      (3)若n较大,则应采用时间复杂度为O(nlgn)的排序方法:快速排序、堆排序或归并排序。

五  最差条件下排序复杂度:

     待续。。。。。

六  每个算法可改进的地方:

      待续。。。。。


七   比较排序和非比较排序




评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值