数据结构常见的八大排序算法及代码实现图解(4)

1w个数据时:

直接插入排序:11.615608 希尔排序:13.012008 简单选择排序:3.645136000000001 堆排序:0.09587900000000005 冒泡排序:6.687218999999999 #**************************************************** 快速排序:9.999999974752427e-07 #快速排序有误:实际上并未执行 #RecursionError: maximum recursion depth exceeded in comparison #**************************************************** 归并排序:0.05638299999999674 基数排序:0.08150400000000246

10w个数据时:

直接插入排序:1233.581131 希尔排序:1409.8012320000003 简单选择排序:466.66974500000015 堆排序:1.2036720000000969 冒泡排序:751.274449 #**************************************************** 快速排序:1.0000003385357559e-06 #快速排序有误:实际上并未执行 #RecursionError: maximum recursion depth exceeded in comparison #**************************************************** 归并排序:0.8262230000000272 基数排序:1.1162899999999354

从运行结果上来看,堆排序、归并排序、基数排序真的快。对于快速排序迭代深度超过的问题,可以将考虑将快排通过非递归的方式进行实现。

Linux公社的RSS地址https://www.linuxidc.com/rssFeed.aspx

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/d483bb6a0c30ed12057df0475b760527.html