顶部
收藏

数据结构——用C语言描述(第2版)


作者:
黄河 唐策善 李龙澍
定价:
49.00 元
版面字数:
460.00千字
开本:
16开
装帧形式:
平装
页数:
360
最新
印次时间:
2026年08月
ISBN:
978-7-04-067756-0
物料号:
67756-00
出版时间:
2026-09-09
读者对象:
高等教育
一级分类:
计算机/教育技术类
二级分类:
计算机类专业核心课程
三级分类:
数据结构

本书系统地介绍了数据结构的基本概念、原理和方法,旨在帮助学生理解和掌握数据的组织与管理方法,培养其设计和实现高效算法以及解决问题的能力。全书内容丰富,涵盖线性表、栈和队列、串、多维数组和广义表、树、图、排序、查找等重要数据结构和相关算法。 本书采用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 各种查找方法的比较
                                                                                                                                                                                    • 习题
                                                                                                                                                                                    • 参考文献

                                                                                                                                                                                    相关图书