开发者社区> 问答> 正文

各种排序算法最好和最坏情况比较

各种排序算法最好和最坏情况比较

展开
收起
知与谁同 2018-07-16 18:26:27 3177 0
2 条回答
写回答
取消 提交回答
  • –直接插入排序,最坏情况需要比较O(n^2)次(n(n - 1)/2次)(有争议)
    –简单选择排序,无论是否最坏都需要O(n^2)次(n(n - 1)/2次)
    –冒泡排序 需要比较O(n^2)次(n(n - 1)/2次),即序列逆序的情况
    –堆排序,无论是否最坏比较O(nlog2n)次
    –快速排序,最坏情况退化为冒泡排序,需要比较O(n^2)次(n(n - 1)/2次)
    –2-路归并排序:比较和移动次数没有好坏之分,都是O(n*log2n);

    2019-07-17 22:50:39
    赞同 展开评论 打赏
  • 最坏情况下比较次数最少的为D)堆排序:
    A)冒泡排序 需要比较O(n^2)次(n(n - 1)/2次),即序列逆序的情况
    B)简单选择排序,无论是否最坏都需要O(n^2)次(n(n - 1)/2次)
    C)直接插入排序,最坏情况需要比较O(n^2)次(n(n - 1)/2次)
    D)堆排序,无论是否最坏比较O(nlog2n)次
    E)快速排序,最坏情况退化为冒泡排序,需要比较O(n^2)次(n(n - 1)/2次)
    2019-07-17 22:50:39
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载