数据结构
本博文纯手打,待完善,不定期更新。
线性表
线性表的类型定义
线性表 (linear_list)是最常用且最简单的一种数据结构。简言之,一个线性表是n个数据元素的有限序列。
一个数据结构可以由若干个 数据项 (item)组成。在这种情况下,常把数据元素称为 记录 (record),含有大量记录的线性表又称为 文件 (file)。
综上:
线性表中的数据元素可以是各式各样的,但同一线性表中的元素必定具有相同特性,即属于同一数据对象,相邻数据元素之间存在着序偶关系。若将线性表记为
(a1, ..., ai-1, ai, ai+1, ..., an)
则表中ai-1领先于ai,ai领先于ai+1,称ai-1是ai的直接前驱元素,ai+1是ai的直接后继元素。
当i=1,2...,n-1时,ai有且仅有一个直接后继。
当i=2,3...,n 时,ai有且仅有一个直接前驱。
线性表一个相对灵活的数据结构,ta的长度可根据需要增长或缩短,即对线性表的数据元素不仅可以进行访问,还可以进行插入删除等操作。
线性表的顺序表示与实现
To be filed
线性表的链式表示与实现
To be filed
栈和队列
栈
抽象数据类型栈的定义
To be filed
栈的表示与实现
To be filed
栈与递归的实现
To be filed
队列
抽象数据类型队列的定义
To be filed
链队列-队列的链式表示与实现
To be filed
循环队列-队列的顺序表示与实现
To be filed
串
串类型的定义
To be filed
串的表示与实现
To be filed
串的模式匹配算法
To be filed
串操作应用举例
To be filed
数组和广义表
数组的定义
To be filed
数组的顺序表示与实现
To be filed
矩阵的压缩存储
To be filed
广义表的定义
To be filed
广义表的存储结构
To be filed
广义表的递归算法
To be filed
树和二叉树
树的定义和基本术语
To be filed
二叉树
二叉树的定义
To be filed
二叉树的性质
To be filed
二叉树的存储结构
To be filed
遍历二叉树和线索二叉树
遍历二叉树
To be filed
线索二叉树
To be filed
树和森林
树的存储结构
To be filed
森林与二叉树的转换
To be filed
树和森林的遍历
To be filed
赫夫曼树及其应用
最优二叉树(赫夫曼树)
To be filed
赫夫曼编码
To be filed
图
图的定义和术语
To be filed
图的存储结构
To be filed
数组表示法
To be filed
邻接表
To be filed
十字链表
To be filed
邻接多重表
To be filed
图的遍历
深度优先搜索
To be filed
广度优先搜索
To be filed
图的连通性问题
To be filed
有向无环图及其应用
To be filed
最短路径
To be filed
动态存储管理
概述
To be filed
可利用空间表及其分配方法
To be filed
边界标识法
To be filed
伙伴系统
To be filed
无用单元收集
To be filed
存储紧缩
To be filed
查找
静态查找表
To be filed
动态查找表
To be filed
哈希表
To be filed
内部排序
概述
To be filed
插入排序
To be filed
快速排序
To be filed
选择排序
To be filed
归并排序
To be filed
基数排序
To be filed
外部排序
外存信息的存取
To be filed
外部排序的方法
To be filed
文件
有关文件的基本概念
To be filed
顺序文件
To be filed
索引文件
To be filed
参考文献&博客&书籍
《数据结构-C语言版》- 严蔚敏、吴伟民编著