
| 数据结构是计算机专业的一门专业基础课,也是一门核心课程。本书是以C语言为工具编写的,学习本课程需要具备相关的C语言知识。本书介绍了各种常用的数据结构,讨论它们在计算机中的存储结构及相关操作和实用算法。 为了让学生能够应用数据结构的知识,更好地进行算法和程序的设计,本书从基本概念讲起,由浅入深,介绍各种数据结构及相关操作。在每章的课后习题里,举了很多数据结构的经典题型并给出答案,方便学生理解所学知识。为提高动手能力,在每章结束时举了很多实例,力求理论联系实际,加深学生对所学知识的理解,方便学生上机实习。 最后以线性表、栈和队列、树和图四种最基本数据结构为主,给出相关的实训内容并包括所有上机程序,极大地方便了应用型高职学生的学习及应用。 本书主要适合高等职业院校的计算机专业学生,也适合于自学计算机相关知识的人员参考使用。 |
| 序 前言 第1章 概论 1.1 数据结构的概念 1.1.1 基本概念及术语 1.1.2 数据的逻辑结构 1.1.3 数据的存储结构 1.1.4 抽象数据类型 1.2 算法和算法分析 1.2.1 算法的概念 1.2.2 算法分析 1.2.3 相关C语言知识回顾 1.3 本章小结 课后习题 第2章 线性表 2.1 线性表的基本概念 2.1.1 线性表的定义 2.1.2 线性表的基本操作 2.2 顺序表 2.2.1 顺序表 2.2.2 顺序表的基本操作与实现 2.3 链表 2.3.1 单链表 2.3.2 单链表的基本操作与实现 2.3.3 链表的变形 2.4 线性表的应用举例 2.5 本章小结 课后习题 第3章 栈和队列 3.1 栈 3.1.1 栈的概念 3.1.2 栈的基本操作 3.1.3 顺序栈 3.1.4 链栈 3.2 队列 3.2.1 队列的概念 3.2.2 队列的基本操作 3.2.3 顺序队列 3.2.4 循环队列 3.2.5 链队列 3.3 栈和队列的应用举例 3.4 本章小结 课后习题 第4章 串和数组 4.1 串 4.1.1 串的基本概念 4.1.2 串的基本操作 4.1.3 串的存储结构 4.2 数组 4.2.1 数组的定义 4.2.2 数组存储的排列顺序 4.2.3 稀疏矩阵的压缩存储 4.2.4 稀疏矩阵的转置算法 4.3 本章小结 课后习题 第5章 树和二叉树 5.1 树 5.1.1 树的定义 5.1.2 树的表示方法 5.1.3 树的基本术语 5.1.4 树的存储结构 5.2 二叉树 5.2.1 二叉树的定义 5.2.2 二叉树的性质 5.2.3 二叉树的存储结构 5.2.4 二叉树的基本运算 5.3 二叉树的建立和遍历 5.3.1 二叉树的建立和输出 5.3.2 二叉树的遍历 5.3.3 由遍历序列恢复二叉树 5.4 树、森林与二叉树的转换 5.4.1 树、森林转换为二叉树 5.4.2 二叉树还原为树、森林 5.5 哈夫曼树 5.5.1 相关概念和哈夫曼树的定义 5.5.2 哈夫曼树的构造方法 5.5.3 哈夫曼编码 5.6 本章小结 课习题 第6章 图 6.1 图的基本概念 6.1.1 图的定义 6.1.2 图的基本术语 6.1.3 图的基本操作 6.2 图的存储结构 6.2.1 邻接矩阵 6.2.2 邻接表 6.3 图的遍历 6.3.1 深度优先搜索法 6.3.2 广度优先搜索法 6.4 最小生成树 6.4.1 普里姆(Prim)算法 6.4.2 克鲁斯卡尔(Kruskal)算法 6.5 拓扑排序 6.6 AOE网与关键路径 6.7 最短路径问题 6.7.1 求一个顶点到其他各项点的最短路径 6.7.2 求每一对顶点之间的最短路径 6.8 本章小结 课后习题 第7章 查找 7.1 基本概念 7.2 静态查找 7.2.1 顺序查找 7.2.2 折半查找 7.2.3 分块查找 7.3 二叉排序树查找 7.3.1 二叉排序树的概念 7.3.2 二叉排序树的基本运算 7.4 哈希表查找 7.4.1 哈希表查找的基本思想 7.4.2 哈希表的构造方法 7.4.3 哈希表的冲突处理 7.4.4 哈希表的查找及性能分析 7.5 本章小结 课后习题 第8章 排序 8.1 排序的基本概念 8.1.1 排序的定义 8.1.2 排序的相关概念 8.2 插入排序 8.2.1 直接插入排序 8.2.2 希尔排序 8.3 交换排序 8.3.1 冒泡排序 8.3.2 快速排序 …… |
商品评论(0条)