排序算法 | 希尔排序及其误区明析

30 篇文章 2 订阅 ¥9.90 ¥99.00
希尔排序是一种改进的插入排序,由D.L.Shell在1959年提出。它通过设定不同间隔进行分组排序,时间复杂度约为O(n^1.3),最后的增量必须为1。虽然非稳定,但相比直接插入排序效率更高。文章详细分析了希尔排序的时间复杂度、空间复杂度及稳定性,并指出了常见误解,如将其误认为冒泡排序。
摘要由CSDN通过智能技术生成

希尔排序 (Shell Sort)

希尔排序(Shell Sort)是插入排序的一种,又称“缩小增量排序”(Diminishing Increment Sort)。该方法因D.L.Shell于1959年提出而得名,这是第一个时间复杂度突破O(n^2)的排序算法,时间复杂度大概是O(n^1.3)。希尔排序是非稳定排序算法。

希尔排序是直接插入排序的改进版本。该方法因D.L.Shell于1959年提出而得名。区别在于,直接插入排序第i个元素是和0到i-1比较,比较间隔是1,即j=j-1;希尔排序第i个元素也是和0到i-1去比较,只不过比较间隔是increment,即j=j-increment;希尔排序的实质就是分组的插入排序


目录

希尔排序 (Shell Sort)

1、算法描述

2、算法分析

2.1、复杂度分析

2.1.1、时间复杂度

2.1.2、空间复杂度

2.2、算法稳定性

3、算法实现

4、算法示例

5、注意


1、算法描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值