注册 登录 进入教材巡展
#
  • #

出版社:高等教育出版社

以下为《数据结构——用C语言描述(第2版)》的配套数字资源,这些资源在您购买图书后将免费附送给您:
  • 高等教育出版社
  • 9787040677560
  • 2版
  • 16开
  • 460
内容简介
本书系统地介绍了数据结构的基本概念、原理和方法,旨在帮助学生理解和掌握数据的组织与管理方法,培养其设计和实现高效算法以及解决问题的能力。全书内容丰富,涵盖线性表、栈和队列、串、多维数组和广义表、树、图、排序、查找等重要数据结构和相关算法。
本书采用C语言作为数据结构和算法的描述语言,并对用C语言描述的算法给出了详细的注解和简要的性能分析。本书是在编者多年从事“数据结构”和“算法设计与分析”课程教学的基础上,汲取国内外优秀教材的精华编写而成的。本书既注重原理又注重实践,配有大量图表、例题和习题;内容阐述深入浅出、通俗易懂,既便于教学,又适合自学。各章之前给出的“内容提要”“学习要点”和“重点难点”,可以帮助读者深刻理解和牢固掌握重要知识点,提高学习效率。本书配有PPT课件、难点要点微视频、习题参考答案等教学资源。
本书可作为高等学校计算机等相关专业“数据结构”课程教材,也可供从事计算机相关工作的科技工作者参考。
目录
目录
 前辅文
 第1章 概论
  1.1 基本概念和术语
  1.2 学习数据结构的意义
  1.3 算法的描述和分析
  习题
 第2章 线性表
  2.1 线性表的逻辑结构
  2.2 线性表的顺序存储结构
   2.2.1 顺序表
   2.2.2 顺序表上实现的基本运算
  2.3 线性表的链式存储结构
   2.3.1 单链表
   2.3.2 循环链表
   2.3.3 双链表
  2.4 顺序表和链表的比较
  习题
 第3章 栈和队列
  3.1 栈
   3.1.1 栈的定义及基本运算
   3.1.2 顺序栈
   3.1.3 链栈
  3.2 栈的应用举例
  3.3 栈与递归
   3.3.1 递归算法设计及内部实现
   3.3.2 递归算法设计的正确性
  3.4 队列
   3.4.1 队列的定义及基本运算
   3.4.2 顺序队列
   3.4.3 链队列
  3.5 队列的应用举例
  习题
 第4章 串
  4.1 串及其运算
   4.1.1 串的基本概念
   4.1.2 串的基本运算
  4.2 串的存储结构
   4.2.1 串的顺序存储
   4.2.2 串的链式存储
  4.3 串运算的实现
   4.3.1 朴素的模式匹配算法
   4.3.2 KMP模式匹配算法
   4.3.3 链串上的模式匹配算法
  习题
 第5章 多维数组和广义表
  5.1 多维数组
  5.2 矩阵的压缩存储
   5.2.1 特殊矩阵
   5.2.2 稀疏矩阵
  5.3 广义表
   5.3.1 广义表的定义及表示
   5.3.2 广义表的存储
  习题
 第6章 树
  6.1 树的概念
  6.2 二叉树
   6.2.1 二叉树的定义
   6.2.2 二叉树的性质
   6.2.3 二叉树的存储结构
  6.3 二叉树的运算
   6.3.1 二叉树的遍历
   6.3.2 二叉树的创建
  6.4 线索二叉树
  6.5 树和森林
   6.5.1 树、森林与二叉树的转换
   6.5.2 树的存储结构
   6.5.3 树和森林的遍历
  6.6 哈夫曼树及其应用
   6.6.1 最优二叉树(哈夫曼树)
   6.6.2 哈夫曼编码
  习题
 第7章 图
  7.1 图的概念
  7.2 图的存储结构
   7.2.1 邻接矩阵表示法
   7.2.2 邻接表表示法
  7.3 图的遍历
   7.3.1 深度优先遍历
   7.3.2 广度优先遍历
  7.4 生成树和最小生成树
   7.4.1 生成树
   7.4.2 最小生成树
  7.5 最短路径
   7.5.1 单源最短路径
   7.5.2 任意顶点对之间的最短路径
  7.6 拓扑排序
  习题
 第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 堆排序
  8.5 归并排序
  8.6 分配排序
   8.6.1 箱排序
   8.6.2 基数排序
  8.7 各种内部排序方法的比较和选择
  习题
 第9章 查找
  9.1 基本概念
  9.2 线性表的查找
   9.2.1 顺序查找
   9.2.2 二分查找
   9.2.3 分块查找
  9.3 树的查找
   9.3.1 二叉排序树
   9.3.2 平衡二叉排序树
   9.3.3 B树
  9.4 散列查找
   9.4.1 散列表的概念
   9.4.2 散列函数的构造方法
   9.4.3 处理冲突的方法
   9.4.4 散列表上的运算
   9.4.5 散列表的性能分析
  9.5 各种查找方法的比较
  习题
 参考文献
 前辅文
 第1章 概论
  1.1 基本概念和术语
  1.2 学习数据结构的意义
  1.3 算法的描述和分析
  习题
 第2章 线性表
  2.1 线性表的逻辑结构
  2.2 线性表的顺序存储结构
   2.2.1 顺序表
   2.2.2 顺序表上实现的基本运算
  2.3 线性表的链式存储结构
   2.3.1 单链表
   2.3.2 循环链表
   2.3.3 双链表
  2.4 顺序表和链表的比较
  习题
 第3章 栈和队列
  3.1 栈
   3.1.1 栈的定义及基本运算
   3.1.2 顺序栈
   3.1.3 链栈
  3.2 栈的应用举例
  3.3 栈与递归
   3.3.1 递归算法设计及内部实现
   3.3.2 递归算法设计的正确性
  3.4 队列
   3.4.1 队列的定义及基本运算
   3.4.2 顺序队列
   3.4.3 链队列
  3.5 队列的应用举例
  习题
 第4章 串
  4.1 串及其运算
   4.1.1 串的基本概念
   4.1.2 串的基本运算
  4.2 串的存储结构
   4.2.1 串的顺序存储
   4.2.2 串的链式存储
  4.3 串运算的实现
   4.3.1 朴素的模式匹配算法
   4.3.2 KMP模式匹配算法
   4.3.3 链串上的模式匹配算法
  习题
 第5章 多维数组和广义表
  5.1 多维数组
  5.2 矩阵的压缩存储
   5.2.1 特殊矩阵
   5.2.2 稀疏矩阵
  5.3 广义表
   5.3.1 广义表的定义及表示
   5.3.2 广义表的存储
  习题
 第6章 树
  6.1 树的概念
  6.2 二叉树
   6.2.1 二叉树的定义
   6.2.2 二叉树的性质
   6.2.3 二叉树的存储结构
  6.3 二叉树的运算
   6.3.1 二叉树的遍历
   6.3.2 二叉树的创建
  6.4 线索二叉树
  6.5 树和森林
   6.5.1 树、森林与二叉树的转换
   6.5.2 树的存储结构
   6.5.3 树和森林的遍历
  6.6 哈夫曼树及其应用
   6.6.1 最优二叉树(哈夫曼树)
   6.6.2 哈夫曼编码
  习题
 第7章 图
  7.1 图的概念
  7.2 图的存储结构
   7.2.1 邻接矩阵表示法
   7.2.2 邻接表表示法
  7.3 图的遍历
   7.3.1 深度优先遍历
   7.3.2 广度优先遍历
  7.4 生成树和最小生成树
   7.4.1 生成树
   7.4.2 最小生成树
  7.5 最短路径
   7.5.1 单源最短路径
   7.5.2 任意顶点对之间的最短路径
  7.6 拓扑排序
  习题
 第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 堆排序
  8.5 归并排序
  8.6 分配排序
   8.6.1 箱排序
   8.6.2 基数排序
  8.7 各种内部排序方法的比较和选择
  习题
 第9章 查找
  9.1 基本概念
  9.2 线性表的查找
   9.2.1 顺序查找
   9.2.2 二分查找
   9.2.3 分块查找
  9.3 树的查找
   9.3.1 二叉排序树
   9.3.2 平衡二叉排序树
   9.3.3 B树
  9.4 散列查找
   9.4.1 散列表的概念
   9.4.2 散列函数的构造方法
   9.4.3 处理冲突的方法
   9.4.4 散列表上的运算
   9.4.5 散列表的性能分析
  9.5 各种查找方法的比较
  习题
 参考文献