史上最简洁排序算法总结(代码略)

排序算法总结(个人理解版):

第Ⅰ类:插入排序(后边元素依次与前边元素比较排序);

第Ⅱ类:选择排序(后边元素编组,选最小与最前元素交换位置)、谢尔排序(选择排序的改进,分组的方法不同)

第Ⅲ类:冒泡排序(1/2比较,2/3比较,依次类推)、快速排序(分组后冒泡)

第Ⅳ类:堆积排序(二叉树结构排序,建立堆)

 平均时间复杂度最坏时间复杂度最好时间复杂度空间复杂度比较次数交换次数排序趟数
插入排序O(n2)O(n2)O(n)O(1)最好为n-1,最差为n(n-1)/2最好为0,最差为n(n-1)/2n-1
谢尔排序O(nlog2n)O(nlog2n)O(n1.3)O(1)最好为nlog2n,最差为n2与gap有关,n-gaplog2n
泡排序O(n2)O(n2)O(n)O(1)n(n-1)/2逆序数与原始状态有关
快速排序O(nlog2n)O(n2)O(nlog2n)O(log2n)~O(n)nlog2n,最差为n(n-1)/2具体分析与原始状态有关
选择排序O(n2)O(n2)O(n2)O(1)n(n-1)/20~(n-1)n-1
堆积排序O(nlog2n)O(nlog2n)O(nlog2n)O(1)nlog2n具体分析n-1
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值