注册 登录 进入教材巡展 进入在线书城
#
  • #

出版时间:2019-01

出版社:北京邮电大学出版社

以下为《数据结构》的配套数字资源,这些资源在您购买图书后将免费附送给您:
  • 北京邮电大学出版社
  • 9787563555451
  • 226257
  • 48247081-2
  • 2019-01
  • 工学
  • 软件工程
  • TP311.12
  • 计算机
  • 本科
内容简介
本书把数据结构的原理、算法分析和实现有机地结合在一起,系统地介绍各种数据结构及相关算法和应用。全书使用标准C语言作为算法描述语言,通过C语言实现了各种经典算法,能更好地让学生理解各种数据结构算法的原理和应用;分别从逻辑结构、物理结构和算法描述与实现等多个角度系统地介绍了线性表,堆栈与队列,字符串,数组、矩阵和广义表等线性结构,以及二叉树和图等各种非线性结构;从算法应用的角度讨论了各种经典的查找和排序算法; 全书共分三部分: 第1部分(第1章)为基本概念介绍部分,介绍数据结构、抽象数据类型以及算法的基本概念与知识;第2部分(第2~7章)为基本数据结构部分,重点介绍线性表、堆栈、队列、串、数组与广义表、树与二叉树以及图等各种基本数据结构及其相关算法,并且附有各种算法具体的实现代码;第3部分(第8章和第9章)为算法应用部分,第八章主要介绍各种查找的算法,包括静态查找和动态查找;第九章主要介绍了各种排序算法的原理与应用。全书提供了大量应用实例,并配有大量的插图便于读者理解抽象的算法,另外每章后均附有一定数量编程习题。 本书适合作为高等院校计算机、软件工程专业高年级本科生、研究生的教材,同时可供对数据结构比较熟悉并
目录
第1章 绪论
1.1 引言
1.2 基本概念与术语
1.3 数据的逻辑结构与存储结构
1.4 数据类型与抽象数据类型
1.4.1 数据类型
1.4.2 抽象数据类型
1.5 算法和算法分析
1.5.1 算法定义与特性
1.5.2 算法描述
1.5.3 算法定量分析与评价
1.6 习题

第2章 线性表
2.1 线性表的逻辑结构
2.1.1 线性表的定义与特征
2.1.2 线性表的基本操作
2.2 线性表的顺序存储结构
2.2.1 顺序表定义与存储结构
2.2.2 顺序表上基本运算的实现
2.2.3 顺序表应用
2.3 线性表的链式存储
2.3.1 单链表
2.3.2 单链表上基本运算的实现
2.3.3 循环链表
2.3.4 双向链表
2.3.5 静态链表
2.3.6 单链表应用
2.4 顺序表和链表的比较
2.5 习题

第3章 栈和队列
3.1 栈
3.1.1 栈的定义及基本操作
3.1.2 顺序栈及基本操作的实现
3.1.3 链栈
3.2 栈的应用
3.3 队列
3.3.1 队列的定义及基本运算
3.3.2 顺序队列及基本运算
3.3.3 链队列
3.4 队列应用
3.5 习题

第4章 字符串与模式匹配
4.1 串及其基本运算
4.1.1 串的基本概念
4.1.2 串的基本运算
4.2 串的存储及基本运算
4.2.1 串的定长顺序存储
4.2.2 串的堆分配存储
4.2.3 串的块链式存储
4.3 模式匹配
4.3.1 简单的模式匹配算法BF
4.3.2 模式匹配算法KMP
4.4 习题

第5章 数组和广义表
5.1 数组的定义与存储
5.1.1 数组的定义
5.1.2 数组的顺序存储结构
5.2 特殊矩阵的压缩存储
5.2.1 对称矩阵的压缩存储
5.2.2 三角矩阵的压缩存储
5.2.3 对角矩阵的压缩存储
5.3 稀疏矩阵
5.3.1 三元组表示法
5.3.2 稀疏矩阵的十字链表存储
5.4 广义表
5.4.1 广义表的定义
5.4.2 广义表的基本操作
5.4.3 广义表的存储结构
5.4.4 广义表基本操作的实现
5.5 习题

第6章 树与二叉树
6.1 树
6.1.1 树的定义
6.1.2 树的逻辑表示法
6.1.3 树的基本术语
6.1.4 树形结构的逻辑特征
6.2 二叉树
6.2.1 二叉树概念
6.2.2 二叉树的性质
6.3 二叉树的存储结构
6.3.1 顺序存储结构
6.3.2 链式存储结构
6.4 二叉树的遍历
6.4.1 二叉树的遍历方法及递归实现
6.4.2 二叉树非递归遍历
6.4.3 二叉树的基本操作
6.4.4 遍历线性序列恢复二叉树
6.5 线索二叉树
6.5.1 线索二叉树的定义及结构
6.5.2 线索二叉树的基本运算
6.6 哈夫曼树一最优二叉树
6.6.1 哈夫曼树的有关概念
6.6.2 哈夫曼树的构造
6.6.3 哈夫曼算法的实现
6.6.4 哈夫曼编码
6.7 树与森林
6.7.1 树、森林到二叉树的转换
6.7.2 树的存储结构
6.7.3 树的遍历
6.8 习题

第7章 图
7.1 图的概念与相关术语
7.2 图的存储表示
7.2.1 邻接矩阵
7.2.2 邻接表
7.2.3 十字链表
7.2.4 邻接多重表
7.3 图的遍历
7.3.1 深度优先搜索
7.3.2 广度优先搜索
7.4 图的连通性
7.4.1 无向图的连通性
7.4.2 有向图的连通性
7.4.3 生成树和生成森林
7.4.4 关结点和重连通分量
7.5 最小生成树
7.5.1 最小生成树的基本概念
7.5.2 普利姆(Prim)算法
7.5.3 Kruskal算法
7.6 最短路径
7.6.1 从一个源点到其他各点的最短路径
7.6.2 每一对顶点之间的最短路径
7.7 有向无环图及其应用
7.7.1 有向无环图的概念
7.7.2 AOV网与拓扑排序
7.7.3 AOE图与关键路径
7.8 习题

第8章 查找
8.1 基本概念与术语
8.2 静态查找表
8.2.1 顺序查找
8.2.3 有序表的折半查找
8.2.3 分块查找
8.3 动态查找表
8.3.1 二叉排序树定义
8.3.2 二叉排序树运算
8.3.3 平衡二叉树(AVL树)
8.3.4 B-树和B+树
8.4 哈希查找
8.4.1 哈希表
8.4.2 常用的哈希函数
8.4.3 处理冲突的方法
8.4.4 哈希表的查找分析
8.5 习题

第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.4.3 堆排序
9.5 归并排序
9.5.1 两路归并排序
9.5.2 归并排序
9.6 分配排序
9.6.1 箱排序
9.6.2 桶排序
9.6.3 基数排序
9.7 排序方法的比较
9.8 外排序
9.8.1 外部排序的方法
9.8.2 多路平衡归并的实现
9.9 习题

参考文献