技术教育社区
www.teccses.org

数据结构(C语言版)-(第2版)

封面

作者:朱昌杰//肖建于

页数:225

出版社:清华大学出版社

出版日期:2014

ISBN:9787302370635

电子书格式:pdf/epub/txt

内容简介

本书系统地介绍了各种常用的数据结构与算法方面的基本知识,并使用C语言描述其算法。全书共8章,第1章介绍了数据结构与算法的一些基本概念;第2~6章分别讨论了线性表、栈与队列、串、多维数组与广义表、树和二叉树、图等常用的数据结构及其应用;第7章和第8章分别介绍查找和内部排序,它们都是数据处理时广泛使用的技术。本书的特色是深入浅出,既注重理论又重视实践;全书配有大量的例题和详尽的注释,各章都有不同类型的习题。 本书可以作为高等院校计算机专业本科生的教材,也可以作为报考高等学校计算机专业硕士研究生入学考试的复习用书,也可以作为专科和成人教育的教材,同时还可以作为从事计算机系统软件和应用软件设计与开发人员的参考资料。

作者简介

朱昌杰,教授,硕士生导师,现任计算机学院院长。安徽省计算机学会常务理事、安徽省计算机教育研究会常务理事、淮北市信息化协会理事长。主持省级自然科学重点项目2项、省级教学研究项目1项、参与国家自然科学基金项目及省部级项目6项,国家级特色专业——计算机科学与技术专业负责人、省级《计算机基础系列课程教学团队》负责人、校级精品课程《数据结构》负责人。发表学术论文20多篇。获省级教学成果二等奖1项、校级教学成果奖5项。

目录

第1章 绪论1.1 数据结构的基本概念1.1.1 数据的逻辑结构1.1.2 数据的物理结构1.2 数据类型和抽象数据类型1.2.1 数据类型1.2.2 抽象数据类型1.3 C语言的数据类型1.4 用C语言描述算法的注意事项1.4.1 算法及其特征1.4.2 C语言描述算法的注意事项1.5 算法设计目标和算法效率度量1.5.1 算法设计目标1.5.2 算法效率度量习题1
第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.4.1 一元多项式的表示与相加2.4.2 约瑟夫环问题习题2
第3章 栈和队列3.1 栈3.1.1 栈的定义3.1.2 栈的顺序存储结构3.1.3 栈的链式存储结构3.2 栈的应用举例3.2.1 数制转换3.2.2 括号匹配的检验3.2.3 简单表达式求值3.3 队列3.3.1 队列的定义3.3.2 队列的顺序存储结构3.3.3 队列的链式存储结构3.4 队列应用举例3.4.1 键盘输入循环缓冲区问题3.4.2 舞伴问题习题3
第4章 串、多维数组与广义表4.1 串4.1.1 串的定义4.1.2 串的表示和实现4.1.3 串的模式匹配算法4.1.4 串的操作应用——文本编辑4.2 数组4.2.1 数组的定义4.2.2 数组的顺序存储结构4.3 矩阵的压缩存储4.3.1 特殊矩阵4.3.2 稀疏矩阵4.4 广义表4.4.1 广义表的定义4.4.2 广义表的基本操作4.4.3 广义表的存储结构习题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.3.3 遍历算法的应用5.3.4 由遍历序列构造二叉树5.3.5 线索二叉树5.4 树和森林5.4.1 树的存储结构5.4.2 树与二叉树的转换5.4.3 森林与二叉树的转换5.4.4 树和森林的遍历5.5 哈夫曼树5.5.1 哈夫曼树的基本概念5.5.2 哈夫曼树的构造方法5.5.3 哈夫曼编码习题5
第6章 图6.1 图的基本概念6.1.1 图的定义6.1.2 图的基本术语6.2 图的存储结构6.2.1 邻接矩阵6.2.2 邻接表6.3 图的遍历6.3.1 深度优先搜索6.3.2 广度优先搜索6.4 最小生成树6.4.1 最小生成树的基本概念6.4.2 Prim算法构造最小生成树6.4.3 Kruskal算法构造最小生成树6.5 有向无环图及其应用6.5.1 拓扑排序6.5.2 关键路径6.6 最短路径6.6.1 单源点的最短路径6.6.2 每对顶点之间的最短路径习题6
第7章 查找7.1 查找的基本概念7.2 顺序表的静态查找7.2.1 顺序查找7.2.2 折半查找7.2.3 分块查找7.3 树表的动态查找7.3.1 二叉排序树7.3.2 平衡二叉树7.3.3 B-树7.3.4 B+树7.4 散列(Hash)表的查找7.4.1 散列表的基本概念7.4.2 散列函数构造方法7.4.3 处理冲突的方法7.4.4 散列表的查找及其分析习题7
第8章 内部排序8.1 排序的基本概念8.2 插入排序8.2.1 直接插入排序8.2.2 折半插入排序8.2.3 希尔排序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 各种内部排序算法的比较8.7.1 内部排序算法的性能比较8.7.2 各种内部排序算法的选择习题8参考文献

下载地址

立即下载

(解压密码:www.teccses.org)

Article Title:《数据结构(C语言版)-(第2版)》
Article link:https://www.teccses.org/457282.html