导图社区 数据结构与算法
数据结构与算法思维导图,详细得总结了数据结构,算法,线性表,栈与队列,串,排序,查找,图,树的内容点。
编辑于2023-02-10 14:24:56 河南数据结构与算法
数据结构
概念&术语
数据
数据元素
数据项
数据对象
数据结构
结构
逻辑结构
物理结构
抽象数据类型
数据类型
抽象数据类型
算法
定义
特性
输入&输出
有穷性
确定性
可行性
设计的要求
正确性
可读性
健壮性
时间效率高和存储量低
效率的度量方法
事后统计方法
事前分析估计方法
函数的渐近增长
算法时间复杂度
定义
推导大O阶方法
常数阶
线性阶
对数阶
平方阶
常见的时间复杂度
最坏情况与平均情况
空间复杂度
线性表
定义
抽象数据类型
顺序存储结构
定义
方式
数据长度与线性表长度区别
地址计算方法
顺序存储结构的插入与删除
获取元素操作
插入操作
删除操作
顺序存储结构的优缺点
线性表的链式存储结构
顺序存储结构不足的解决方法
定义
头指针与头结点的异同
代码描述
单链表的读取
单链表的插入与删除
插入
删除
单链表的整表创建
单链表的整表删除
单链表结构与顺序存储结构的优缺点
静态链表
插入操作
删除操作
优缺点
循环链表
双向链表
栈与队列
定义
定义
进栈出栈变化形式
栈的抽象数据类型
栈的顺序存储结构及实现
结构
进栈&出栈操作
两栈共享空间
栈的链式存储结构及实现
结构
进栈&出栈操作
栈的作用
栈的应用--递归
裴波那契数列实现
递归定义
栈的应用--四则运算表达式求值
后缀表示法定义
后缀表达式计算结果
中缀表达式转后缀表达式
队列的定义
队列的抽象数据类型
循环队列
队列顺序存储的不足
定义
队列的链式存储结构及实现
结构
入队&出队操作
串
定义
串的比较
串的抽象数据类型
串的存储结构
顺序存储结构
链式存储结构
朴素的模式匹配算法
KMP模式匹配算法
算法原则
next数组值推导
算法的实现
算法的改进
nextval数组值推导
排序
基本概念与分类
排序的稳定性
内排序与外排序
排序用到的结构与函数
冒泡排序
最简单排序实现
冒泡排序算法
冒泡排序优化
复杂度分析
简单选择排序
算法
算法复杂度分析
直接插入排序
算法
复杂度分析
希尔排序
原理
算法
复杂度分析
堆排序
算法
复杂度分析
归并排序
算法
复杂度分析
非递归实现归并排序
快速排序
算法
复杂度分析
优化
查找
概论
顺序表查找
算法
优化
有序表查找
折半查找
插值查找
裴波纳契查找
线性索引查找
稠密索引
分块索引
倒排序索引
二叉排序树
查找操作
插入操作
删除操作
平衡二叉树AVL树
实现原理
实现算法
多路查找树B树
2-3树
2-3-4树
B树
B+树
散列表查找(哈希表)概述
查找定义
查找步骤
散列函数的构造方法
直接定址法
数字分析法
平法取中法
折叠法
除留余数法
随机数法
处理散列冲突的方法
开放定址法
再散列函数法
链地址法
公共溢出区法
散列表查找法
算法实现
性能分析
图
定义
各种图定义
图定点与边缘间的关系
连通图相关术语
图的抽象数据类型
图的存储结构
邻接矩阵
邻接表
十字链表
邻接多重表
边集数组
图的遍历
深度优先遍历
广度优先遍历
最小生成树
Prim算法
Kruskal算法
最短路径
Dijkstra算法
Floyd算法
拓扑排序
拓扑排序介绍
算法
关键路径
算法原理
算法
树
定义
结点分类
结点间的关系
树的其他相关概念
树的抽象数据类型
树的存储结构
双亲表示法
孩子表示法
子主题
二叉树的定义
特点
特殊的二叉树
二叉树的性质
性质1
性质2
性质3
性质4
性质5
二叉树的存储结构
顺序存储结构
二叉链表
遍历二叉树
原理
方法
前序遍历算法
中序遍历算法
后续遍历算法
推导遍历算法
二叉树的建立
线索二叉树
原理
结构实现
树、森林与二叉树的转换
树转换为二叉树
森林转换为二叉树
二叉树转换为树
二叉树转换为森林
树与森林的遍历
赫夫曼树及其应用
赫夫曼树
定义及原理
赫夫曼编码
数据结构与算法
数据结构
概念&术语
数据
数据元素
数据项
数据对象
数据结构
结构
逻辑结构
物理结构
抽象数据类型
数据类型
抽象数据类型
算法
定义
特性
输入&输出
有穷性
确定性
可行性
设计的要求
正确性
可读性
健壮性
时间效率高和存储量低
效率的度量方法
事后统计方法
事前分析估计方法
函数的渐近增长
算法时间复杂度
定义
推导大O阶方法
常数阶
线性阶
对数阶
平方阶
常见的时间复杂度
最坏情况与平均情况
空间复杂度
线性表
定义
抽象数据类型
顺序存储结构
定义
方式
数据长度与线性表长度区别
地址计算方法
顺序存储结构的插入与删除
获取元素操作
插入操作
删除操作
顺序存储结构的优缺点
线性表的链式存储结构
顺序存储结构不足的解决方法
定义
头指针与头结点的异同
代码描述
单链表的读取
单链表的插入与删除
插入
删除
单链表的整表创建
单链表的整表删除
单链表结构与顺序存储结构的优缺点
静态链表
插入操作
删除操作
优缺点
循环链表
双向链表
栈与队列
定义
定义
进栈出栈变化形式
栈的抽象数据类型
栈的顺序存储结构及实现
结构
进栈&出栈操作
两栈共享空间
栈的链式存储结构及实现
结构
进栈&出栈操作
栈的作用
栈的应用--递归
裴波那契数列实现
递归定义
栈的应用--四则运算表达式求值
后缀表示法定义
后缀表达式计算结果
中缀表达式转后缀表达式
队列的定义
队列的抽象数据类型
循环队列
队列顺序存储的不足
定义
队列的链式存储结构及实现
结构
入队&出队操作
串
定义
串的比较
串的抽象数据类型
串的存储结构
顺序存储结构
链式存储结构
朴素的模式匹配算法
KMP模式匹配算法
算法原则
next数组值推导
算法的实现
算法的改进
nextval数组值推导
排序
基本概念与分类
排序的稳定性
内排序与外排序
排序用到的结构与函数
冒泡排序
最简单排序实现
冒泡排序算法
冒泡排序优化
复杂度分析
简单选择排序
算法
算法复杂度分析
直接插入排序
算法
复杂度分析
希尔排序
原理
算法
复杂度分析
堆排序
算法
复杂度分析
归并排序
算法
复杂度分析
非递归实现归并排序
快速排序
算法
复杂度分析
优化
查找
概论
顺序表查找
算法
优化
有序表查找
折半查找
插值查找
裴波纳契查找
线性索引查找
稠密索引
分块索引
倒排序索引
二叉排序树
查找操作
插入操作
删除操作
平衡二叉树AVL树
实现原理
实现算法
多路查找树B树
2-3树
2-3-4树
B树
B+树
散列表查找(哈希表)概述
查找定义
查找步骤
散列函数的构造方法
直接定址法
数字分析法
平法取中法
折叠法
除留余数法
随机数法
处理散列冲突的方法
开放定址法
再散列函数法
链地址法
公共溢出区法
散列表查找法
算法实现
性能分析
图
定义
各种图定义
图定点与边缘间的关系
连通图相关术语
图的抽象数据类型
图的存储结构
邻接矩阵
邻接表
十字链表
邻接多重表
边集数组
图的遍历
深度优先遍历
广度优先遍历
最小生成树
Prim算法
Kruskal算法
最短路径
Dijkstra算法
Floyd算法
拓扑排序
拓扑排序介绍
算法
关键路径
算法原理
算法
树
定义
结点分类
结点间的关系
树的其他相关概念
树的抽象数据类型
树的存储结构
双亲表示法
孩子表示法
子主题
二叉树的定义
特点
特殊的二叉树
二叉树的性质
性质1
性质2
性质3
性质4
性质5
二叉树的存储结构
顺序存储结构
二叉链表
遍历二叉树
原理
方法
前序遍历算法
中序遍历算法
后续遍历算法
推导遍历算法
二叉树的建立
线索二叉树
原理
结构实现
树、森林与二叉树的转换
树转换为二叉树
森林转换为二叉树
二叉树转换为树
二叉树转换为森林
树与森林的遍历
赫夫曼树及其应用
赫夫曼树
定义及原理
赫夫曼编码