文件大小:8.23 MB
文件类型:pdf
发布时间:2023-01-03 11:54:39
需资源分:2
下载次数:0
Tag:数据结构
::资源简介::
大话数据结构
内容简介
前言
编者的话
第01章 数据结构绪论
1_1 开场白
1_2 你数据结构怎么学的
1_3 数据结构起源
1_4 基本概念和术语
1_4_1 数据
1_4_2 数据元素
1_4_3 数据项
1_4_4 数据对象
1_4_5 数据结构
1_5 逻辑结构与物理结构
1_5_1 逻辑结构
1_5_2 物理结构
1_6 抽象数据类型
1_6_1 数据类型
1_6_2 抽象数据类型
1_7 总结回顾
1_8 结尾语
第02章 算法
2_1 开场白
2_2 数据结构与算法关系
2_3 两种算法的比较
2_4 算法定义
2_5 算法的特性
2_5_1 输入输出
2_5_2 有穷性
2_5_3 确定性
2_5_4 可行性
2_6 算法设计的要求
2_6_1 正确性
2_6_2 可读性
2_6_3 健壮性
2_6_4 时间效率高和存储量低
2_7 算法效率的度量方法
2_7_1 事后统计方法
2_7_2 事前分析估算方法
2_8 函数的渐近增长
2_9 算法时间复杂度
2_9_1 算法时间复杂度定义
2_9_2 推导大o阶方法
2_9_3 常数阶
2_9_4 线性阶
2_9_5 对数阶
2_9_6 平方阶
2_10 常见的时间复杂度
2_11 最坏情况与平均情况
2_12 算法空间复杂度
2_13 总结回顾
2_14 结尾语
第03章 线性表
3_1 开场白
3_2 线性表的定义
3_3 线性表的抽象数据类型
3_4 线性表的顺序存储结构
3_4_1 顺序存储定义
3_4_2 顺序存储方式
3_4_3 数据长度与线性表长度区别
3_4_4 地址计算方法
3_5 顺序存储结构的插入与删除
3_5_1 获得元素操作
3_5_2 插入操作
3_5_3 删除操作
3_5_4 线性表顺序存储结构的优缺点
3_6 线性表的链式存储结构
3_6_1 顺序存储结构不足的解决办法
3_6_2 线性表链式存储结构定义
3_6_3 头指针与头结点的异同
3_6_4 线性表链式存储结构代码描述
3_7 单链表的读取
3_8 单链表的插入与删除
3_8_1 单链表的插入
3_8_2 单链表的删除
3_9 单链表的整表创建
3_10 单链表的整表删除
3_11 单链表结构与顺序存储结构优缺点
3_12 静态链表
3_12_1 静态链表的插入操作
3_12_2 静态链表的删除操作
3_12_3 静态链表优缺点
3_13 循环链表
3_14 双向链表
3_15 总结回顾
3_16 结尾语
第04章 栈与队列
4_1 开场白
4_2 栈的定义
4_2_1 栈的定义
4_2_2 进栈出栈变化形式
4_3 栈的抽象数据类型
4_4 栈的顺序存储结构及实现
4_4_1 栈的顺序存储结构
4_4_2 栈的顺序存储结构进栈操作
4_4_3 栈的顺序存储结构出栈操作
4_5 两栈共享空间
4_6 栈的链式存储结构及实现
4_6_1 栈的链式存储结构
4_6_2 栈的链式存储结构进栈操作
4_6_3 栈的链式存储结构出栈操作
4_7 栈的作用
4_8 栈的应用——递归
4_8_1 斐波那契数列实现
4_8_2 递归定义
4_9 栈的应用——四则运算表达式求值
4_9_1 后缀[逆波兰]表示法定义
4_9_2 后缀表达式计算结果
4_9_3 中缀表达式转后缀表达式
4_10 队列的定义
4_11 队列的抽象数据类型
4_12 循环队列
4_12_1 队列顺序存储的不足
4_12_2 循环队列定义
4_13 队列的链式存储结构及实现
4_13_1 队列链式存储结构入队操作
4_13_2 队列链式存储结构出队操作
4_14 总结回顾
4_15 结尾语
第05章 串
5_1 开场白
5_2 串的定义
5_3 串的比较
5_4 串的抽象数据类型
5_5 串的存储结构
5_5_1 串的顺序存储结构
5_5_2 串的链式存储结构
5_6 朴素的模式匹配算法
5_7 kmp模式匹配算法
5_7_1 kmp模式匹配算法原理
5_7_2 next数组值推导
5_7_3 kmp模式匹配算法实现
5_7_4 kmp模式匹配算法改进
5_7_5 nextval数组值推导
5_8 总结回顾
5_9 结尾语
第06章 树
6_1 开场白
6_2 树的定义
6_2_1 结点分类
6_2_2 结点间关系
6_2_3 树的其他相关概念
6_3 树的抽象数据类型
6_4 树的存储结构
6_4_1 双亲表示法
6_4_2 孩子表示法
6_4_3 孩子兄弟表示法
6_5 二叉树的定义
6_5_1 二叉树特点
6_5_2 特殊二叉树
6_6 二叉树的性质
6_6_1 二叉树性质1
6_6_2 二叉树性质2
6_6_3 二叉树性质3
6_6_4 二叉树性质4
6_6_5 二叉树性质5
6_7 二叉树的存储结构
6_7_1 二叉树顺序存储结构
6_7_2 二叉链表
6_8 遍历二叉树
6_8_1 二叉树遍历原理
6_8_2 二叉树遍历方法
6_8_3 前序遍历算法
6_8_4 中序遍历算法
6_8_5 后序遍历算法
6_8_6 推导遍历结果
6_9 二叉树的建立
6_10 线索二叉树
6_10_1 线索二叉树原理
6_10_2 线索二叉树结构实现
6_11 树、森林与二叉树的转换
6_11_1 树转换为二叉树
6_11_2 森林转换为二叉树
6_11_3 二叉树转换为树
6_11_4 二叉树转换为森林
6_11_5 树与森林的遍历
6_12 赫夫曼树及其应用
6_12_1 赫夫曼树
6_12_2 赫夫曼树定义与原理
6_12_3 赫夫曼编码
6_13 总结回顾
6_14 结尾语
第07章 图
7_1 开场白
7_2 图的定义
7_2_1 各种图定义
7_2_2 图的顶点与边间关系
7_2_3 连通图相关术语
7_2_4 图的定义与术语总结
7_3 图的抽象数据类型
7_4 图的存储结构
7_4_1 邻接矩阵
7_4_2 邻接表
7_4_3 十字链表
7_4_4 邻接多重表
7_4_5 边集数组
7_5 图的遍历
7_5_1 深度优先遍历
7_5_2 广度优先遍历
7_6 最小生成树
7_6_1 普里姆[prim]算法
7_6_2 克鲁斯卡尔[kruskal]算法
7_7 最短路径
7_7_1 迪杰斯特拉[dijkstra]算法
7_7_3 弗洛伊德[floyd]算法
7_8 拓扑排序
7_8_1 拓扑排序介绍
7_8_2 拓扑排序算法
7_9 关键路径
7_9_1 关键路径算法原理
7_9_2 关键路径算法
7_1 0总结回顾
7_1 1结尾语
第08章 查找
8_1 开场白
8_2 查找概论
8_3 顺序表查找
8_3_1 顺序表查找算法
8_3_2 顺序表查找优化
8_4 有序表查找
8_4_1 折半查找
8_4_2 插值查找
8_4_3 斐波那契查找
8_5 线性索引查找
8_5_1 稠密索引
8_5_2 分块索引
8_5_3 倒排索引
8_6 二叉排序树
8_6_1 二叉排序树查找操作
8_6_2 二叉排序树插入操作
8_6_3 二叉排序树删除操作
8_6_4 二叉排序树总结
8_7 平衡二叉树[avl树]
8_7_1 平衡二叉树实现原理
8_7_2 平衡二叉树实现算法
8_8 多路查找树[b树]
8_8_1 2-3树
8_8_2 2-3-4树
8_8_3 b树
8_8_4 b+树
8_9 散列表查找[哈希表]概述
8_9_1 散列表查找定义
8_9_2 散列表查找步骤
8_10 散列函数的构造方法
8_10_1 直接定址法
8_10_2 数字分析法
8_10_3 平方取中法
8_10_4 折叠法
8_10_5 除留余数法
8_10_6 随机数法
8_11 处理散列冲突的方法
8_11_1 开放定址法
8_11_2 再散列函数法
8_11_3 链地址法
8_11_4 公共溢出区法
8_12 散列表查找实现
8_12_1 散列表查找算法实现
8_12_2 散列表查找性能分析
8_13 总结回顾
8_14 结尾语
第09章 排序
9_1 开场白
9_2 排序的基本概念与分类
9_2_1 排序的稳定性
9_2_2 内排序与外排序
9_2_3 排序用到的结构与函数
9_3 冒泡排序
9_3_1 最简单排序实现
9_3_2 冒泡排序算法
9_3_3 冒泡排序优化
9_3_4 冒泡排序复杂度分析
9_4 简单选择排序
9_4_1 简单选择排序算法
9_4_2 简单选择排序复杂度分析
9_5 直接插入排序
9_5_1 直接插入排序算法
9_5_2 直接插入排序复杂度分析
9_6 希尔排序
9_6_1 希尔排序原理
9_6_2 希尔排序算法
9_6_3 希尔排序复杂度分析
9_7 堆排序
9_7_1 堆排序算法
9_7_2 堆排序复杂度分析
9_8 归并排序
9_8_1 归并排序算法
9_8_2 归并排序复杂度分析
9_8_3 非递归实现归并排序
9_9 快速排序
9_9_1 快速排序算法
9_9_2 快速排序复杂度分析
9_9_3 快速排序优化
9_10 总结回顾
9_11 结尾语
附录参考文献
::下载地址::
>> 评论