展开全部

主编推荐语

本书全面系统地介绍了数据结构理论知识和算法设计思想。

内容简介

全书共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日。人民邮电出版社坚持“立足信息产业、面向现代社会、传播科学知识、服务科教兴国”,致力于通信、计算机、电子技术、教材、少儿、经管、摄影、集邮、旅游、心理学等领域的专业图书出版。