重要排序算法的总结

打印 上一主题 下一主题

主题 551|帖子 551|积分 1653

重要排序算法的总结



  • 稳固性对基础范例对象来说毫无意义
  • 稳固性对非基础范例对象故意义,可以保留之前的相对次序



  • 主要算法时间、空间、稳固性总结
   时间 空间 稳固性
  SelectionSort O(N^2) O(1) 无
  BubbleSort O(N^2) O(1) 有
  InsertionSort O(N^2) O(1) 有
  MergeSort O(N*logN) O(N) 有
  QuickSort O(N*logN) O(logN) 无
  HeapSort O(N*logN) O(1) 无
  CountSort O(N) O(M) 有
  RadixSort O(N) O(M) 有
  
注意:随机快速排序的复杂度肯定要按照概率上的期望指标来估计,用最差的复杂度估计无意义


  • 排序的选择: 统统看你在排序过程中在意什么

    • 数据量非常的情况下可以做到非常迅速:插入排序
       

    • 性能优异、实现简单且利于改进(面对差别业务可以选择差别划分策略)、不在乎稳固性:随机快排
       

    • 性能优异、不在乎额外空间占用、具有稳固性:归并排序
       

    • 性能优异、额外空间占用要求O(1)不在乎稳固性:堆排序


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

用多少眼泪才能让你相信

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表