数据结构--希尔排序

目录

希尔排序的定义 

给一个序列进行希尔排序 

 希尔排序的算法实现

 算法性能分析

1.时间复杂度

2.稳定性 

3.适用性 

知识点回顾


希尔排序的定义 

 

给一个序列进行希尔排序 

 

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

相距为4的子表

 

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

 

 

得到结果是

 

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

 

 相距为2的子表

 

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

第二趟得到结果是

 

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

 第三趟的子表

 

第三趟子表排序后的结果

 

 希尔排序的算法实现

 

 算法性能分析

1.时间复杂度

 

2.稳定性 

不稳定

3.适用性 

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

知识点回顾

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/112704.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于Xml方式Bean的配置-Bean的依赖注入

Bean的依赖注入配置 Bean的依赖注入方式 注入方式配置方式通过Bean的set方法注入 <property name"userDAO" ref"userDAO"/> <property name"userDAO" value"userDAO"/> 通过构造Bean的方法进行注入 <constructor-arg …

异步FIFO设计的仿真与综合技术(6)

概述 本文主体翻译自C. E. Cummings and S. Design, “Simulation and Synthesis Techniques for Asynchronous FIFO Design 一文&#xff0c;添加了笔者的个人理解与注释&#xff0c;文中蓝色部分为笔者注或意译。前文链接&#xff1a; 异步FIFO设计的仿真与综合技术&#xf…

天选之子C++是如何发展起来的?如何学习C++呢?

天选之子C是如何发展起来的&#xff1f;如何学习C呢? 一、什么是C二、C发展史三、C的重要性3.1 语言的使用广泛度3.2 在工作领域 四、如何学习C4.1 大佬怎么学&#xff1f;4.2 自己怎么学 一、什么是C C语言是结构化和模块化的语言&#xff0c;适合处理较小规模的程序。对于复…

docker-compose使用

docker-compose docker的项目编排 一、安装docker-compose Rocky Linux Rocky Linux安装Docker Compose的步骤如下&#xff1a; 安装Docker。您可以使用以下命令安装Docker&#xff1a; sudo dnf install docker-ce docker-ce-cli containerd.io安装Docker Compose。您可以…

这些提高摸鱼效率的自动化测试技巧,提高打工人幸福感~

最近有许多小伙伴都在吐槽打工好难。 每天都是执行许多重复的任务 例如阅读新闻、发邮件、查看天气、打开书签、清理文件夹等等&#xff0c; 使用自动化脚本&#xff0c;就无需手动一次又一次地完成这些任务&#xff0c; 非常方便啊有木有&#xff1f;&#xff01; 今天就…

idea打开项目时不小心点了attach,如何恢复?

右击映射的项目&#xff0c;选择Remove from Project View即可。

网络分层模型和常见协议介绍

文章目录 网络分层模型和常见协议介绍网络分层模型介绍常见各层协议介绍 网络分层模型和常见协议介绍 理解性记忆&#xff1a;这是我自己创造的一个理解性记忆口诀&#xff0c;大家别笑我&#x1f604; 七层&#xff1a;因为七层协议并没有得到应用&#xff0c;所以物&#xff…

可以实时监控电脑的软件有哪些?

在当今的数字化世界中&#xff0c;计算机已经成为我们生活和工作中不可或缺的一部分。然而&#xff0c;随着计算机使用的普及&#xff0c;安全问题也日益突出。为了保护我们的计算机和数据&#xff0c;实时监控电脑的使用情况变得越来越重要。本文将为您介绍一些实时监控电脑的…

【深度学习】 Python 和 NumPy 系列教程(十三):Matplotlib详解:1、2d绘图(上):折线图、散点图、柱状图、直方图、饼图

目录 一、前言 二、实验环境 三、Matplotlib详解 0、绘图风格 1、2d绘图类型 0. 设置中文字体 1. 折线图&#xff08;Line Plot&#xff09; 2. 散点图&#xff08;Scatter Plot&#xff09; 3. 柱状图&#xff08;Bar Plot&#xff09; 4. 直方图&#xff08;Histogr…

第二证券:迎政策利好,工业母机概念拉升,华东数控等涨停

工业母机概念19日盘中发力拉升&#xff0c;到发稿&#xff0c;博亚精工涨超11%&#xff0c;华东重机、华东数控涨停&#xff0c;华辰配备、华中数控涨超4%。 音讯面上&#xff0c;近来&#xff0c;财政部、税务总局、国家发改委、工信部发布《关于前进集成电路和工业母机企业研…

按月统计数据——mysql实现

业务场景 对某类业务数据&#xff0c;按月统计数量&#xff0c;返回当年各个月份的任务数量。 思路 按照创建时间&#xff0c;格式化为yyyy-mm的month字段&#xff0c;然后根据month进行分组查询&#xff0c;统计count作为数量 SELECT DATE_FORMAT(create_time, %Y-%m) AS mon…

Mac 安装软件各种报错解决方案

Mac 安装软件各种报错解决方案 文章目录 Mac 安装软件各种报错解决方案一. 打开允许“允许任何来源”二. 无法打开"xxx"&#xff0c;因为它不是从App Store下载三. 无法打开"xxx"&#xff0c;因为 Apple无法检查其是否包含恶意软件。四. "xxx"已…