数据结构--希尔排序

目录

希尔排序的定义

给一个序列进行希尔排序

希尔排序的算法实现

算法性能分析

1.时间复杂度

2.稳定性

3.适用性

知识点回顾


希尔排序的定义

给一个序列进行希尔排序

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

相距为4的子表

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

得到结果是

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

相距为2的子表

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

第二趟得到结果是

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

第三趟的子表

第三趟子表排序后的结果

希尔排序的算法实现

算法性能分析

1.时间复杂度

2.稳定性

不稳定

3.适用性

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

知识点回顾

相关推荐
Genevieve_xiao1 天前
【数据结构】【xjtuse】面向考纲学习(上)
数据结构·学习
一颗宁檬不酸1 天前
数据结构:串(String)知识总结
数据结构·
CoovallyAIHub1 天前
2025年值得关注的5款数据标注工具
深度学习·算法·计算机视觉
FuckPatience1 天前
C# 补码
开发语言·算法·c#
稚辉君.MCA_P8_Java1 天前
Gemini永久会员 VB返回最长有效子串长度
数据结构·后端·算法
小年糕是糕手1 天前
【C++】类和对象(五) -- 类型转换、static成员
开发语言·c++·程序人生·考研·算法·visual studio·改行学it
Xの哲學1 天前
Linux内核数据结构:设计哲学与实现机制
linux·服务器·算法·架构·边缘计算
秋深枫叶红1 天前
嵌入式第二十七篇——数据结构——栈
c语言·数据结构·学习·算法
稚辉君.MCA_P8_Java1 天前
Gemini永久会员 Java 返回最长有效子串长度
java·数据结构·后端·算法
Swift社区1 天前
LeetCode 440 - 字典序的第 K 小数字
算法·leetcode·职场和发展