常见排序算法
博客专区 > robinfly 的博客 > 博客详情
常见排序算法
robinfly 发表于5个月前
常见排序算法
  • 发表于 5个月前
  • 阅读 13
  • 收藏 0
  • 点赞 0
  • 评论 0

腾讯云 技术升级10大核心产品年终让利>>>   

冒泡排序

  • 时间复杂度 : 最差 O(n^2)、平均O(n^2)
  • 空间复杂度:最佳0、最差O(n)、平均O(1)
  • 稳定

快速排序

  • 时间复杂度:最差O(n^2)、平均O(n*log2n)
  • 空间复杂度:最差 O(n) 冒泡情况、最优O(n logn)
  • 不稳定:例如,a = [1, 2, 2, 3, 5]以 a[2]为基准,大于等于a[2]的排右边,则a[1]与a[2]的相对位置发生变化,使其不稳定。

桶排序

基本思想

  1. 把大量数据切分成基本有序的数据块(桶),
  2. 对桶中的数据作比较排序

基数排序

基本思想:将待排数据中的每组关键字进行桶排序

计数排序

基本思想:对每一个元素记录它出现的次数,就能确定一个数所处位置,

性能比较

  1. 基数排序时间复杂度是O(d*n),桶排序O(n)
  2. 基数排序不做任何比较,需要的桶不多(10个);桶排则可能会做比较、桶也可能也会比较多
  3. 未完......

参考

标签: 排序算法
共有 人打赏支持
粉丝 2
博文 43
码字总数 9212
×
robinfly
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: