第九章 排序【数据结构】

简介: 第九章 排序【数据结构】

配套资源下载

数据结构资源下载导航【数据结构】

第九章 排序

可以参考改网站

https://visualgo.net/zh

9.1 概述

记录序列的数据类型描述如下

#define MAXSIZE 1000  //假设的文件长度,即待排序的记录数目  
typedef int KeyType;  //假设的关键字类型
typedef int OtherType;
typedef struct{
  KeyType key;//关键字项
  OtherType other_data;//其他数据项,类型OtherType依赖于具体应用而定义  
}RecordType; //记录类型
typedef struct{
  RecordType r[ MAXSIZE+1];
  int length;//序列长度,即记录个数
}RecordList; //记录序列类型,即顺序表类型

9.2 插入类排序

9.2.1 直接插入排序

9.2.2 折半插入排序

9.2.3 希尔排序

9.3 交换类排序

9.3.1冒泡排序

9.3.2 快速排序

9.4 选择类排序

9.4.1 简单选择排序

9.4.2 树形选择排序

9.4.3 堆排序

9.5 归并类排序

9.5.1 二路归并排序

9.5.2自然归并排序

9.6 分配类排序

9.6.1 多关键字排序

9.6.2 链式基数排序

9.7 外部排序

9.7.1置换选择排序

9.7.2多路归并外排序

9.8 算法总结



习题9

相关文章
|
3月前
|
算法 搜索推荐 Java
数据结构与算法学习十三:基数排序,以空间换时间的稳定式排序,速度很快。
基数排序是一种稳定的排序算法,通过将数字按位数切割并分配到不同的桶中,以空间换时间的方式实现快速排序,但占用内存较大,不适合含有负数的数组。
44 0
数据结构与算法学习十三:基数排序,以空间换时间的稳定式排序,速度很快。
|
3月前
|
存储 搜索推荐 算法
【用Java学习数据结构系列】七大排序要悄咪咪的学(直接插入,希尔,归并,选择,堆排,冒泡,快排)以及计数排序(非比较排序)
【用Java学习数据结构系列】七大排序要悄咪咪的学(直接插入,希尔,归并,选择,堆排,冒泡,快排)以及计数排序(非比较排序)
35 1
|
3月前
|
搜索推荐 索引
【初阶数据结构】深度解析七大常见排序|掌握底层逻辑与原理(二)
【初阶数据结构】深度解析七大常见排序|掌握底层逻辑与原理
|
3月前
|
搜索推荐 C++
【初阶数据结构】深度解析七大常见排序|掌握底层逻辑与原理(一)
【初阶数据结构】深度解析七大常见排序|掌握底层逻辑与原理
|
3月前
|
算法
蓝桥杯宝藏排序 | 数据结构 | 快速排序 归并排序
蓝桥杯宝藏排序 | 数据结构 | 快速排序 归并排序
05_用一个栈实现另一个栈的排序
05_用一个栈实现另一个栈的排序
|
3月前
|
人工智能 搜索推荐 算法
【初阶数据结构】深度解析七大常见排序|掌握底层逻辑与原理(三)
【初阶数据结构】深度解析七大常见排序|掌握底层逻辑与原理
|
5月前
|
C语言
数据结构——排序【上】
数据结构——排序【上】
|
5月前
|
搜索推荐 算法 测试技术
【数据结构】排序
【数据结构】排序
|
6月前
|
搜索推荐
【数据结构常见七大排序(三)上】—交换排序篇【冒泡排序】And【快速排序】
【数据结构常见七大排序(三)上】—交换排序篇【冒泡排序】And【快速排序】
【数据结构常见七大排序(三)上】—交换排序篇【冒泡排序】And【快速排序】