计算机
类型
可以朗读
语音朗读
302千字
字数
2023-09-01
发行日期
展开全部
主编推荐语
本书全面系统地介绍了数据结构理论知识和算法设计思想。
内容简介
全书共10章,包括线性表、栈和队列、串、递归、数组和特殊矩阵、树和二叉树、图等数据结构以及排序、查找算法,以Java语言实现。
本书用简单通俗的例子将复杂算法通俗易懂化;用贴近生活的图片引导每一章内容的开始,融入趣味性和人文素养;用趣味游戏或绘图方式去讲清楚概念和算法思想。
目录
- 版权信息
- 内容提要
- 前言
- 微课视频资源索引
- 第1章 绪论
- 1.1 数据结构基础
- 1.1.1 基本概念及举例
- 1.1.2 逻辑结构
- 1.1.3 存储结构
- 1.2 算法的概念
- 1.2.1 算法的定义
- 1.2.2 算法的特性
- 1.2.3 算法设计目标
- 1.2.4 算法描述
- 1.3 算法分析
- 1.3.1 算法的时间复杂度
- 1.3.2 算法的空间复杂度
- 1.4 绪论学习总结
- 1.5 绪论实验
- 1.6 练习题
- 第2章 线性表
- 2.1 线性表的基本概念
- 2.2 顺序表
- 2.2.1 顺序表的存储结构
- 2.2.2 顺序表的基本操作
- 2.3 单链表
- 2.3.1 单链表的存储结构
- 2.3.2 单链表的基本操作
- 2.4 双链表
- 2.4.1 双链表的存储结构
- 2.4.2 双链表的基本操作
- 2.5 循环链表
- 2.5.1 循环单链表
- 2.5.2 循环双链表
- 2.6 线性表的应用
- 2.6.1 顺序表的应用
- 2.6.2 单链表的应用
- 2.6.3 双链表的应用
- 2.6.4 循环链表的应用
- 2.7 线性表学习总结
- 2.8 线性表实验
- 2.9 练习题
- 第3章 栈和队列
- 3.1 栈的基本概念
- 3.2 顺序栈
- 3.2.1 顺序栈的存储结构
- 3.2.2 顺序栈的基本操作
- 3.3 链栈
- 3.3.1 链栈的存储结构
- 3.3.2 链栈的基本操作
- 3.4 栈的应用
- 3.5 队列的基本概念
- 3.6 顺序队列
- 3.6.1 顺序队列的存储结构
- 3.6.2 顺序队列的基本操作
- 3.7 链队列
- 3.7.1 链队列的存储结构
- 3.7.2 链队列的基本操作
- 3.8 循环队列和优先队列
- 3.8.1 循环队列
- 3.8.2 优先队列
- 3.9 队列的应用
- 3.10 栈和队列学习总结
- 3.11 栈和队列实验
- 3.12 练习题
- 第4章 字符串
- 4.1 字符串的基本概念
- 4.2 顺序串
- 4.2.1 顺序串的存储结构
- 4.2.2 顺序串的基本操作
- 4.3 链串
- 4.3.1 链串的存储结构
- 4.3.2 链串的基本操作
- 4.4 字符串的模式匹配
- 4.4.1 BF算法
- 4.4.2 KMP算法
- 4.4.3 改进的KMP算法
- 4.5 字符串的应用
- 4.6 字符串学习总结
- 4.7 字符串实验
- 4.8 练习题
- 第5章 递归
- 5.1 递归的概念和原理
- 5.2 递归模型
- 5.3 递归算法的应用
- 5.4 递归学习总结
- 5.5 递归实验
- 5.6 练习题
- 第6章 数组和特殊矩阵
- 6.1 数组的基本概念
- 6.2 数组的存储结构
- 6.3 数组的基本操作
- 6.4 数组的应用
- 6.5 特殊矩阵的基本概念
- 6.6 特殊矩阵压缩存储
- 6.6.1 对称矩阵压缩存储
- 6.6.2 三角矩阵压缩存储
- 6.6.3 对角矩阵压缩存储
- 6.6.4 稀疏矩阵压缩存储
- 6.7 特殊矩阵的应用
- 6.8 数组和特殊矩阵学习总结
- 6.9 数组和特殊矩阵实验
- 6.10 练习题
- 第7章 树和二叉树
- 7.1 树
- 7.1.1 树的基本概念
- 7.1.2 树的顺序存储和链式存储
- 7.2 二叉树
- 7.2.1 二叉树的性质
- 7.2.2 二叉树的存储结构
- 7.2.3 二叉树递归算法设计
- 7.2.4 二叉树的基本操作
- 7.3 二叉树遍历
- 7.3.1 层次遍历
- 7.3.2 先序遍历
- 7.3.3 中序遍历
- 7.3.4 后序遍历
- 7.4 二叉树构造
- 7.5 线索二叉树
- 7.5.1 线索二叉树的存储结构
- 7.5.2 构造线索二叉树
- 7.5.3 遍历线索二叉树
- 7.6 哈夫曼树
- 7.6.1 哈夫曼树的定义
- 7.6.2 哈夫曼树构造
- 7.6.3 哈夫曼编码
- 7.7 二叉树与树、森林之间的转换
- 7.8 树和二叉树的应用
- 7.9 树和二叉树学习总结
- 7.10 树和二叉树实验
- 7.11 练习题
- 第8章 图
- 8.1 图的基本概念
- 8.2 图的存储结构
- 8.2.1 邻接矩阵
- 8.2.2 邻接表
- 8.3 图的遍历
- 8.3.1 深度优先遍历
- 8.3.2 广度优先遍历
- 8.4 生成树和最小生成树
- 8.4.1 生成树和最小生成树的基本概念
- 8.4.2 Prim算法
- 8.4.3 Kruskal算法
- 8.5 最短路径
- 8.5.1 最短路径的基本概念
- 8.5.2 Dijkstra算法
- 8.5.3 Floyd算法
- 8.6 拓扑排序
- 8.7 关键路径
- 8.8 图的应用
- 8.9 图学习总结
- 8.10 图实验
- 8.11 练习题
- 第9章 排序
- 9.1 排序的定义和分类
- 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.5 归并排序
- 9.6 分配排序
- 9.6.1 桶排序
- 9.6.2 基数排序
- 9.7 排序的应用
- 9.8 排序学习总结
- 9.9 排序实验
- 9.10 练习题
- 第10章 查找
- 10.1 查找的定义、分类和性能
- 10.2 静态表查找
- 10.2.1 顺序查找
- 10.2.2 二分查找
- 10.2.3 分块查找
- 10.3 动态表查找
- 10.3.1 二叉排序树查找
- 10.3.2 平衡二叉树查找
- 10.3.3 B-树
- 10.3.4 B+树
- 10.4 哈希表查找
- 10.4.1 哈希函数
- 10.4.2 解决冲突方法
- 10.4.3 哈希表查找性能分析
- 10.5 查找的应用
- 10.6 查找学习总结
- 10.7 查找实验
- 10.8 练习题
- 附录A Java语言中的数据结构
- 附录B 基础算法练习题
- 附录C 编程题
- 参考文献
展开全部
出版方
人民邮电出版社
人民邮电出版社是工业和信息化部主管的大型专业出版社,成立于1953年10月1日。人民邮电出版社坚持“立足信息产业、面向现代社会、传播科学知识、服务科教兴国”,致力于通信、计算机、电子技术、教材、少儿、经管、摄影、集邮、旅游、心理学等领域的专业图书出版。