408考研科目《数据结构》第八章第一节:排序的基本概念和插入排序(直接插入排序,折半插入排序,希尔排序)

news2025/1/20 22:44:07

文章目录

  • 教程
  • 1.排序的基本概念
    • 1.1 排序算法的评价指标
    • 1.2 排序算法的分类
  • 2. 插入排序
    • 2.1 直接插入排序
      • 2.1.1 算法效率分析
    • 2.2 折半插入排序
      • 总结
    • 2.3 希尔排序 (Shell Sort)
      • 总结

教程

  1. 排序: https://www.bilibili.com/video/BV1b7411N798/?p=77&share_source=copy_web&vd_source=d228985826b563972268952905224139
  2. 插入排序:https://www.bilibili.com/video/BV1b7411N798/?p=78&share_source=copy_web&vd_source=d228985826b563972268952905224139
    3.希尔排序 (Shell Sort) https://www.bilibili.com/video/BV1b7411N798/?p=79&share_source=copy_web&vd_source=d228985826b563972268952905224139

1.排序的基本概念

排序(Sort),就是重新排列表中的元素,使表中的元素满足按关键字有序的过程。
在这里插入图片描述
在这里插入图片描述

1.1 排序算法的评价指标

  • 时间复杂度
  • 空间复杂度
    在这里插入图片描述
    在这里插入图片描述

1.2 排序算法的分类

在这里插入图片描述

一个神奇的学习网站:https://www.cs.usfca.edu/~galles/visualization/Algorithms.html

这个网站可以模拟每个基本算法的运算过程(推荐)

2. 插入排序

算法思想:每次将一个待排序的记录按其关键字大小插入到前面已排好序的子序列中,直到全部记录插入完成。

2.1 直接插入排序

在这里插入图片描述


在这里插入图片描述


在这里插入图片描述

2.1.1 算法效率分析

在这里插入图片描述
在这里插入图片描述


在这里插入图片描述


在这里插入图片描述

2.2 折半插入排序

思路:先用折半查找找到应该插入的位置,再移动元素
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

总结

在这里插入图片描述

2.3 希尔排序 (Shell Sort)

在这里插入图片描述
在这里插入图片描述


在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述


在这里插入图片描述
在这里插入图片描述


在这里插入图片描述

总结

在这里插入图片描述


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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

队列——算法专项刷题(七)

七、队列 常用于辅助遍历树,设计队列先进先出特性的数据结构 7.1 滑动窗口的平均值 给定一个整数数据流和一个窗口大小,根据该滑动窗口的大小,计算滑动窗口里所有数字的平均值。 实现 MovingAverage 类: MovingAverage(int si…

图书管理系(附源码PPT)

图书管理系统1 绪 论1.1 研究背景1.2 研究意义1.3 相关研究现状1.3.1 高校图书管理面临的问题1.3.2 信息化为图书管理带来新变化2 相关技术2.1 JSP 概述2.2 MySQL 数据库技术2.3 Spring2.4 SpringMVC2.5 Dbcp2.6 Maven3 系统分析3.1 需求分析3.1.1 系统的功能需求分析3.1.2 系统…

利用衍射表面消色差的混合目镜建模

1. 摘要 同时具有折射和衍射表面的混合透镜已成为一种极具潜力的解决方案应用于多种领域。在此案例中,我们将演示混合目镜的一个例子,其中利用衍射透镜表面对色差进行了校正。由ZemaxOpticStudio进行初始化设计,并导入VirtualLab Fusion进行进…

TensorRt(2)快速入门介绍

文章目录1、使用ONNX部署的示例1.1、导出模型1.2、设置batch size批处理大小1.3、指定数值精度1.4、转换模型1.5、部署模型2、使用ONNX转换为engine再部署的示例2.1、导出ONNX模型2.1.1、从TensorFlow中导出ONNX2.1.1、从PyTorch中导出ONNX2.2、ONNX 转化为 TensorRT Engine2.3…

27个超实用Chrome控制台调试技巧 Source 全局搜索(关注更新)

谷歌开发者工具提供了一系列的功能来帮助开发者高效 Debug 网页应用,让他们可以更快地查找和修复 bug。在谷歌的开发者工具中,有非常多有用的小工具,但是很多开发者并不知道。通过这篇文章,我把我常用的那些高效 Debug 的 Chrome …

ARM 汇编指令集1_2

一、两个概念:指令与伪指令 (汇编)指令,是 CPU 机器指令的助记符,经过编译后会得到一串10组成的机器码,可以由 CPU 读取执行。(汇编)伪指令,本质上不是指令(…

版本控制利器——changelog

问题描述 当前,我们项目需要进行版本的确定,人工审核代码已接近尾声,但为了防止后续继续出现该问题,我希望能够做到在每次push到master时,更新changelog 将每一个版本的commit记录下来,类似于下列 解决…

K8s 集成 Jenkins 部署Go Web项目

风离不摆烂学习日志 Day9 K8s 集成 Jenkins 部署Go Web项目 Dockerfile FROM golang:alpine as builder # 需要go环境 MAINTAINER fl1906WORKDIR /work # 源 RUN go env -w GOPROXYhttps://goproxy.cn && go env -w CGO_ENABLED0 && go env -w GO111MODULEon C…

Splunk UBA 从 Ldap 成功导入 HR 数据

1: 今天在配置Splunk UBA 的HRdata 和asset data 的时候,都要用到ldap, 所以还非要装add-on:\ add-on 的名字: Splunk Supporting Add-on for Active Directory (SA-LDAPSearch) (SA-LDAPSearch) 这个add-on 的配置: Configure the Splunk Supporting Add-on for Activ…

使用腾讯云cos搭建图片服务器

背景 当我们能不希望把图片上传到自己的服务器时,可以采用腾讯云cos帮我们免费代图片,我们只需要在自己的数据库里保存一个图片地址就行了 二、注册账号免费试用 1、注册腾讯云账号 按照腾讯云的注册方式,注册自己的账号 2、实名认证 选择个…

blender boxCutter插件

boxCutter可以用来进行bool运算 打开boxCutter 方法1:物体模式在舞台左侧选择boxCutter图标 方法2:物体模式按N,在舞台右侧的侧边栏里选择boxCutter 方法3 物体模式alta 打开BoxCutter后,舞台上方,N键的弹出菜单&…

进行 Spring 6 迁移的最佳方式

介绍 在本文中,我们将了解如何将现有应用程序迁移到Spring 6以及如何充分利用此升级。 本文中的提示基于我在Hypersistence Optimizer和高性能 Java Persistence 项目中添加对 Spring 6 的支持所做的工作。 爪哇 17 首先,Spring 6 将最低 Java 版本提…

2022.11.27 学习周报

文章目录摘要文献阅读1.题目2.摘要3.介绍4.基于后向传播算法的多时间尺度RNN4.1 循环神经网络(RNN)4.2 基于多时间尺度的RNN预测模型5.实验5.1 数据简介5.2 数据分析5.3 评价指标5.4 实验结果6.结论深度学习1.循环神经网络(RNN)1.…

Flutter 5 大本地数据库解决方案

Flutter 5 大本地数据库解决方案 原文 https://levelup.gitconnected.com/top-5-local-database-solutions-for-flutter-development-6351cd494070 前言 这里列出了最流行的数据库解决方案以及代码示例。 选择正确的数据管理系统对于提高效率和可 extension 性以及影响可用性和…

3DConvCaps:3DUNet与卷积胶囊编码器用于医学图像分割

摘要 卷积神经网络需要大量的训练数据,无法处理物体的姿态和变形。此外其中的池化层也倾向于丢弃位置等重要的信息。CNN对旋转和仿射变换非常敏感。 胶囊网络是最近出现的一种新型体系结构,其通过动态路由和卷积步长代替池化层,在部分整体表…

steam搬砖项目的核心内容解答

大家好,我是阿阳 如果你有个几千块钱积蓄,想做点小生意,又不知道做啥,那我建议你来做steam搬砖,steam搬砖是什么呢?steam搬砖怎么赚钱的呢?你听我一步步跟你说来 steam搬砖是什么呢&#xff1f…

详解GMM高斯混合模型EM模型

一般讲到GMM就会讲到EM。 我不过多的介绍EM算法。这里只是举一些例子来看看真实的GMM怎么用EM算的。 一、GMM的作用 记住GMM的作用,就是聚类! 二、GMM有hard和soft两种 hard-GMM和soft-GMM是为了对标k-means和soft k-means。在中文互联网上搜索到的GM…

【SVM分类】基于matlab哈里斯鹰算法优化支持向量机SVM分类【含Matlab源码 2243期】

⛄一、哈里斯鹰算法简介 HHO算法用数学公式来模拟现实中哈里斯鹰在不同机制下捕捉猎物的策略.在HHO中,哈里斯鹰是候选解,猎物随迭代逼近最优解.HHO算法包括两个阶段:全局探索阶段、局部开采阶段。 1 全局探索阶段 在这一阶段中,哈…

springboot thymeleaf使用

导入依赖 <dependency> <groupId>org.thymeleaf</groupId> <artifactId>thymeleaf</artifactId> <version>3.0.11.RELEASE</version> </dependency> <dependency> <groupId>org.thymeleaf</groupId> <a…

springboot集成swagger并更换主题

前言 swagger对于web一个开发人员&#xff0c;可以说是非常熟悉的了&#xff0c;之前都是用的公司搭好的框架拿来就用&#xff0c;自己也没有研究过&#xff0c;最近想搞一个自己拿来练手的基础框架&#xff0c;因此来记录一下springboot集成swagger的过程和注意事项。 swagg…