七种排序算法总结

根据排序过程中借助的主要操作,将7种内排序算法按照下图所示进行分类。


将7种算法的各种指标进行对比,如下表所示。


从平均情况来看,显然最后3种改进算法要胜过希尔排序,并远远胜过前3种简单算法。

从最好情况看,反而冒泡和直接插入排序要更胜一筹,也就是说,如果待排序列总是基本有序,反而不应该考虑四种复杂的改进算法。

从最快情况看,堆排序与归并排序又强过快速排序以及其他简单排序。

从空间复杂度来说,如果执行算法的软件所处的环境非常在乎内存使用量的多少时,应该选择堆排序。

从稳定性来看,归并排序是个好算法。

从待排序记录的个数上来说,待排序的个数n越小,采用简单排序算法更合适。反之,n越大,采用改进算法越合适。

总之,综合各项指标来说,经过优化的快速排序是性能最好的排序算法,但是不同场合也应该考虑使用不同的算法。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值