数据结构--希尔排序

目录

希尔排序的定义

给一个序列进行希尔排序

希尔排序的算法实现

算法性能分析

1.时间复杂度

2.稳定性

3.适用性

知识点回顾


希尔排序的定义

给一个序列进行希尔排序

第一趟d可以是元素个数/2

相距为4的子表

对子表进行直接插入排序(由小到大)

得到结果是

第二趟相距为2的元素为一组

相距为2的子表

对子表进行直接插入排序(由小到大)

第二趟得到结果是

第三趟d=1,相距为1的元素为子表,正好就是所有的元素,整个表已经呈现出"基本有序",对整体在进行一次"直接插入排序"

第三趟的子表

第三趟子表排序后的结果

希尔排序的算法实现

算法性能分析

1.时间复杂度

2.稳定性

不稳定

3.适用性

仅适合于顺序表,不适用于链表

知识点回顾

相关推荐
pursuit_csdn1 分钟前
力扣周赛 503
java·算法·leetcode
sheeta19986 分钟前
LeetCode 每日一题笔记 日期:2026.05.21 题目:3043. 最长公共前缀的长度
笔记·算法·leetcode
加油20197 分钟前
嵌入式软件技术栈和学习路线详解
linux·arm开发·数据结构·mqtt·设计模式·嵌入式
吃好睡好便好9 分钟前
创建随机矩阵
开发语言·人工智能·线性代数·算法·matlab·矩阵
sheeta199822 分钟前
LeetCode 每日一题笔记 日期:2026.05.23 题目:1752. 检查数组是否经排序和轮转得到
笔记·算法·leetcode
是main不是漫24 分钟前
【数据结构--双向链表】从前有个节点,它想要两头讨好…
c语言·数据结构·链表
Frostnova丶25 分钟前
【算法笔记】最短路径算法
笔记·算法·图论
南境十里·墨染春水28 分钟前
数据结构——AVL二叉平衡树
数据结构
小此方28 分钟前
Re:Linux系统篇(二十一)进程篇·六:穿过底层看本质,深入理解底层进程切换与 O(1) 调度算法
linux·驱动开发·算法
小O的算法实验室29 分钟前
2026年SEVC,层级分解协同演化算法+带有无人机的车辆路径路径规划
算法·无人机