专门做环保设备的网站,做网站公司的介绍,免费空间 网站,svg wordpress碎碎念#xff1a;想了很久#xff0c;不知道数据结构这个科目最终该以什么笔记方式呈现出来#xff0c;是纸质版还是电子版#xff1f;后来想了又想#xff0c;还是电子版吧#xff1f;毕竟和计算机有关~#xff08;啊哈哈哈哈哈哈哈#xff09;
概率论已经更新完了想了很久不知道数据结构这个科目最终该以什么笔记方式呈现出来是纸质版还是电子版后来想了又想还是电子版吧毕竟和计算机有关~啊哈哈哈哈哈哈哈
概率论已经更新完了不出意料的话六月末七月初会更新电子技术基础七月中旬更新计算机组成原理 数据结构45-4分钟搞定堆排序_哔哩哔哩_bilibili 39-48
目录 排序算法 直接插入排序
折半插入排序
编辑
希尔排序
快速排序
简单选择排序
堆排序
插入元素
删除元素
归并排序
基数排序 排序算法 直接插入排序 操作流程
选取19它是第一个数并将其作为有序序列
第一轮
选取35
并与有序序列也就是19进行比较
3519
于是在19的后面。
这样19和35组成有序序列 第二轮
选取9
并与有序序列也就是1935进行比较
935
919
于是9放在19前面。
这样91935组成有序序列 第三轮
选取2
并与有序序列也就是91935进行比较
235
219
29
于是2放在9前面。
这样291935组成有序序列
以此类推得到最后结果 折半插入排序 具体看这一步如何安置15 1.将15放到初始位置也就是0的位置
2.low指向第一个元素
3.high指向15原来的位置
4.mid16/23.5 取3所以指向3的位置 5.15和17进行比较1517
6.highmid-1,high指向2的位置 7.mid12/21.5 取1 所以指向1的位置
8.15和2进行比较215 9.low mid1low指向2 low和high相等的时候结束了。所以15插入到后面 这些是另外一种思考方式因为长课程那里的high不是指向元素15而是指向元素35。
10.mid22/2 mid指向2
11.15和2比较152
12.lowmid1
13.lowhigh,退出循环 希尔排序 1.间隔分组这里有8个因为为总长度的一半因此为4组 2.进行组内排序
719
2215
2325
179 3.再分组为之前的一半之前是4组现在两组 3.进行组内排序
4.再分组之前是2组现在就1组 5.组内排序 冒泡排序
比较次数数组元素-1 7和22进行比较
22和23进行比较
23和17进行比较需要交换
23和19进行比较需要交换
23和15进行比较需要交换
最终23被确定因此第二轮23不需要参与比较
7和22进行比较
22和17进行比较需要交换
22和19进行比较需要交换
22和15进行比较需要交换
最终22被确定因此第三轮22不需要参与比较 以此类推 快速排序 1.选取中心轴一般为首位这里是元素19
2.移动high指针2519,high指针继续移动2319,high指针继续移动1519,15拿出来放到19原本的位置0索引位置 3.移动low指针919,719,1719
5.当lowhigh时中心轴被确定
第一轮排序结束 第二轮会分别产生两个low两个high缩小范围以此类推进行排序
简单选择排序 1. 在一堆数中找到最小的13然后与第一位进行交换
2.在一堆数中找到最小的27然后与第二位进行交换
以此类推
堆排序 我们调整的是大根堆所以会把最大值放在根节点且父节点会大于子节点
8/2-1所以从3号位置开始调整
9757不用调整。
3号调整完了就调整2号。
2号的父节点大于子节点因此不用调整。
2号调整完了就调整1号。
父节点小于子节点因此取子节点中最大值放在1号位也就是13号位置进行交换 1号调整完了调整0号节点
父节点大于子节点因此01号位置进行交换 再看一眼1号节点小于其子节点因此将14号位置进行交换 最后根节点为最大值并且所有的父节点都大于其所拥有的子节点即算完成
这里的38和57还要对换一下 插入元素
插入85
只需要沿着这个根进行调整就好
8538,8576 删除元素
删除堆顶元素97
将最末尾的38放在堆顶将97拿出来然后从上到下进行调整
对换的原则是要使得父节点大于子节点 38和其子节点相比85更大85和38进行对掉 38和76对掉 38和57对换 归并排序 两两进行比较7和2223和1719和1525和9 然后再进行7和22和23和17的比较19和15和25和9的比较 最后进行7和22和23和17和9和15和25和9的比较 基数排序 第一轮按个位排 第二轮按十位排
第三轮按百位排第三轮就是最后结果