顶部
收藏

数据结构(第3版)

“十二五”普通高等教育本科国家级规划教材

作者:
刘大有 等
定价:
43.00元
ISBN:
978-7-04-046787-1
版面字数:
500.000千字
开本:
16开
全书页数:
暂无
装帧形式:
平装
重点项目:
“十二五”普通高等教育本科国家级规划教材
出版时间:
2017-03-06
读者对象:
高等教育
一级分类:
计算机/教育技术类
二级分类:
计算机类专业核心课程
三级分类:
数据结构

本书系统介绍了数据结构的概念、原理、技术和应用实例,由纸介质部分和在线数字化资源部分所组成,是一部“纸介质教材”和“数字化资源”相辅相成、紧密结合的“新形态教材”。

本书的纸介质部分主要包括数学准备、绪论、基本数据结构、排序与查找等内容,共8章。其中,第1章“数学准备”,系统地介绍与算法分析紧密相关的数学分支(生成函数与渐近表示除外,渐近表示在第2章简要介绍)的基本知识;第2章“绪论”,对算法描述语言ADL和算法书写规范、数据结构与算法的基本概念、算法分析基础等进行阐述;第3、4章介绍线性结构,系统地描述线性表、堆栈、队列、数组和字符串等结构的存储、操作和应用;第5章“树与二叉树”,在详细刻画树和二叉树结构的基础上,从应用和数据结构扩展的视角渐进地讨论线索二叉树、哈夫曼树、并查集和决策树等内容;第6章“图”,系统地阐述图的基本概念、基本存储结构和基本算法,新增了带约束的最短路径算法和功能同Warshall算法但更高效的传递闭包求解算法,从应用的视角讨论复杂网络概念和基于图的典型信息搜索算法;第7、8章“排序”与“查找”,深入讨论排序和查找的重要内容,并给出典型算法的描述、时间复杂性分析和相关算法的比较等。

本书的数字化资源部分主要包括以下几部分:算法的C++程序代码,与ADL算法描述相呼应,为读者上机实践提供方便;习题答案或解题思路;重要内容的讲解视频;较难算法的动画演示程序。这些内容均以数字化形式存于网站,读者使用移动终端扫描纸介质教材上的二维码便可随时随地访问与之对应的数字化资源。

本书可作为高等院校计算机科学与技术、软件工程及相关专业的教材和教学参考书,也可供相关专业的工程技术人员参考使用。

  • 前辅文
  • 第1章 数学准备
    • 1.1 数学归纳法
    • 1.2 数、幂与对数
    • 1.3 和与积
    • 1.4 整数函数和初等数论
    • 1.5 排列和阶乘
    • 1.6 二项式系数
    • 1.7 调和数
    • 1.8 斐波那契数
    • 小结
    • 推荐读物与参考文献
    • 习题
  • 第2章 绪论
    • 2.1 为什么要学习数据结构
    • 2.2 数据结构概念
      • 2.2.1 数据的逻辑结构
      • 2.2.2 数据的存储结构
      • 2.2.3 对数据结构的操作
      • 2.2.4 数据结构示例
    • 2.3 算法
      • 2.3.1 算法及其特性
      • 2.3.2 算法的描述
      • 2.3.3 算法的评价准则
    • 2.4 算法的正确性证明
    • 2.5 算法分析基础
      • 2.5.1 算法时间复杂性的分析方法
      • 2.5.2 复杂性函数的渐近表示
      • 2.5.3 算法时间与空间分析
      • 2.5.4 计算复杂性和算法的效率
    • 小结
    • 推荐读物与参考文献
    • 习题
  • 第3章 线性表、堆栈和队列
    • 3.1 线性表的定义和基本操作
    • 3.2 线性表的顺序存储结构
    • 3.3 线性表的链接存储结构
      • 3.3.1 单链表
      • 3.3.2 循环链表
      • 3.3.3 双向链表
    • 3.4 复杂性分析
    • 3.5 堆栈
      • 3.5.1 堆栈的定义和基本操作
      • 3.5.2 顺序栈
      • 3.5.3 链式栈
      • 3.5.4 顺序栈与链式栈的比较
      • 3.5.5 堆栈应用——括号匹配
      • 3.5.6 堆栈应用——递归
    • 3.6 队列
      • 3.6.1 队列的定义和基本操作
      • 3.6.2 顺序队列
      • 3.6.3 链式队列
    • 小结
    • 推荐读物与参考文献
    • 习题
  • 第4章 数组和字符串
    • 4.1 数组
      • 4.1.1 数组的存储和寻址
      • 4.1.2 一维数组的基本操作
    • 4.2 矩阵
      • 4.2.1 矩阵的数组表示
      • 4.2.2 特殊矩阵的压缩存储
      • 4.2.3 三元组表
      • 4.2.4 十字链表
    • 4.3 字符串
      • 4.3.1 字符串的定义与存储
      • 4.3.2 模式匹配算法
    • 小结
    • 推荐读物与参考文献
    • 习题
  • 第5章 树与二叉树
    • 5.1 树的基本概念
      • 5.1.1 树的定义
      • 5.1.2 树的相关术语
      • 5.1.3 树的表示
    • 5.2 二叉树
      • 5.2.1 二叉树定义和主要性质
      • 5.2.2 二叉树顺序存储
      • 5.2.3 二叉树链接存储
      • 5.2.4 二叉树遍历
      • 5.2.5 二叉树的其他操作
      • 5.2.6 表达式树
    • 5.3 线索二叉树
      • 5.3.1 线索二叉树的概念
      • 5.3.2 线索二叉树的操作
      • 5.3.3 线索二叉树的进一步说明
    • 5.4 压缩与哈夫曼树
      • 5.4.1 文件编码
      • 5.4.2 扩充二叉树
      • 5.4.3 哈夫曼树和哈夫曼编码
    • 5.5 树的存储和操作
      • 5.5.1 树与二叉树的转换
      • 5.5.2 树的存储结构
      • 5.5.3 树和森林的遍历
      • 5.5.4 树的顺序表示
    • 5.6 等价类与并查集
      • 5.6.1 等价类
      • 5.6.2 并查集的实现
    • 5.7 分类与决策树
    • 小结
    • 推荐读物与参考文献
    • 习题
  • 第6章 图
    • 6.1 图的基本概念
    • 6.2 图的存储结构
      • 6.2.1 邻接矩阵
      • 6.2.2 邻接表
    • 6.3 图的遍历算法
      • 6.3.1 深度优先遍历
      • 6.3.2 广度优先遍历
    • 6.4 拓扑排序
    • 6.5 关键路径
    • 6.6 最短路径问题
      • 6.6.1 无权最短路径问题
      • 6.6.2 正权最短路径问题
      • 6.6.3 每对顶点之间的最短路径
      • 6.6.4 满足约束的最短路径
    • 6.7 最小支撑树
      • 6.7.1 普里姆算法
      • 6.7.2 克鲁斯卡尔算法
    • 6.8 图的应用
      • 6.8.1 可及性及传递闭包算法
      • 6.8.2 连通分量
      • 6.8.3 图在网络分析和信息检索中的应用
    • 小结
    • 推荐读物与参考文献
    • 习题
  • 第7章 排序
    • 7.1 排序问题的基本概念
    • 7.2 插入排序
      • 7.2.1 直接插入排序
      • 7.2.2 Shell排序
    • 7.3 交换排序
      • 7.3.1 冒泡排序
      • 7.3.2 快速排序
    • 7.4 选择排序
      • 7.4.1 直接选择排序
      • 7.4.2 堆排序
    • 7.5 合并排序
    • 7.6 基于关键词比较的排序算法分析
      • 7.6.1 平方阶排序算法及改进算法
      • 7.6.2 线性对数阶排序算法
      • 7.6.3 分治排序的一般方法
      • 7.6.4 基于关键词比较的排序算法下界
    • 7.7 分布排序
    • 7.8 外排序
      • 7.8.1 外存储器
      • 7.8.2 磁带排序
      • 7.8.3 磁盘排序
    • 小结
    • 推荐读物与参考文献
    • 习题
  • 第8章 查找
    • 8.1 顺序查找
      • 8.1.1 无序表的顺序查找
      • 8.1.2 有序表的顺序查找
    • 8.2 基于关键词比较的查找
      • 8.2.1 对半查找
      • 8.2.2 一致对半查找
      • 8.2.3 斐波那契查找
      • 8.2.4 插值查找
    • 8.3 二叉查找树
      • 8.3.1 基本概念和性质
      • 8.3.2 查找、插入和删除
      • 8.3.3 平均情况时间分析
    • 8.4 最优二叉查找树
      • 8.4.1 访问频率
      • 8.4.2 最优二叉查找树
      • 8.4.3 近似最优树的构造
    • 8.5 高度平衡树
      • 8.5.1 基本概念和性质
      • 8.5.2 查找和插入操作
      • 8.5.3 线性表的平衡树表示
      • 8.5.4 删除操作
    • 8.6 B树
      • 8.6.1 多叉树
      • 8.6.2 B树
    • 8.7 数字查找
      • 8.7.1 检索结构查找
      • 8.7.2 数字树查找
    • 8.8 散列
      • 8.8.1 散列函数
      • 8.8.2 冲突调节
      • 8.8.3 删除
    • 小结
    • 推荐读物与参考文献
    • 习题

本数字课程与“十二五”普通高等教育本科国家级规划教材《数据结构(第3版)》纸质教材一体化设计,紧密配合,为读者提供电子教案、重要内容的讲解视频、较难算法的动画演示及示例源代码等辅助教学内容。充分运用多种形式的媒体资源,丰富了知识的呈现形式,拓展了教材内容。在有效帮助读者提升课程学习效果的同时,也为读者自主学习学习提供思维与探索的空间。

3-1线性表的定义和基本操作
文档mp4
3-2线性表的顺序存储结构
文档mp4
3-3单链表
文档mp4
3-5双向循环链表插入和删除算法
文档mp4
详见纸质图书
3-6复杂性分析
文档mp4
详见纸质图书
3-7堆栈和概念
文档mp4
详见纸质图书
3-8堆栈的应用
文档mp4
详见纸质图书
3-9队列的定义和基本操作
文档mp4
详见纸质图书
4-1数组的存储和寻址
文档mp4
详见纸质图书
4-2矩阵的数组表示
文档mp4
详见纸质图书
4-3字符串的定义
文档mp4
详见纸质图书
4-4字符串的匹配
文档mp4
详见纸质图书
4-5失败函数算法
文档mp4
详见纸质图书
5-1树的定义
文档mp4
详见纸质图书
5-2二叉树链接存储
文档mp4
详见纸质图书
5-2二叉树与二叉树的顺序存储
文档mp4
详见纸质图书
5-3二叉树的遍历上
文档mp4
详见纸质图书
5-4二叉树的遍历下
文档mp4
详见纸质图书
5-5创建二叉树
文档mp4
详见纸质图书
5-6复制二叉树
文档mp4
详见纸质图书

相关图书