《数据结构——用C语言描述(第2版)》是由耿国华,张德同,周明全等编着,高等教育出版社出版的“十二五”普通高等教育本科国家级规划教材,既可作为高等学校计算机及相关专业数据结构课程的教材,也可供从事计算机套用开发的工程技术人员参考使用。
全书共10章,内容包括:基本概念、基本结构(线性表、栈与伫列、串、数组与广义表、树、图)和基本技术(查找方法与排序方法)三大部分。
基本介绍
- 书名:数据结构——用C语言描述(第2版)
- 作者:耿国华,张德同,周明全等
- ISBN:978-7-04-043305-0
- 类别:“十二五”普通高等教育本科国家级规划教材
- 页数:362页
- 出版社:高等教育出版社
- 出版时间:2015-07-22
- 字数:520千字
成书过程
修订情况
《数据结构——用C语言描述(第2版)》是在2011年6月第1版的基础上,由耿国华,张德同,周明全等根据教育部计算机类专业教学指导委员会制定的“数据结构与算法”课程大纲和《全国硕士研究生入学统一考试计算机专业基础综合考试大纲》的要求而编写。
2015年7月,由高等教育出版社出版,第一次印刷。
2018年12月,由高等教育出版社出版,第二次印刷。
出版工作
策划编辑 | 责任编辑 | 封面设计 | 责任印製 |
---|---|---|---|
倪文慧 | 倪文慧 | 张志 | 赵义民 |
内容简介
《数据结构——用C语言描述(第2版)》共10章,内容包括基本概念、基本结构(线性表、栈与伫列、串、数组与广义表、树、图)和基本技术(查找方法与排序方法)三大部分,每章均附有小结与典型题例,并配有例题、习题与实习题,连贯性强。与该书配套的教学资源丰富,按章节知识树的结构构成,包括教学视频、部分扩展内容、课程设计与课程实习指导、多媒体教学课件、算法源码等,适合网路学习使用。
教材目录
前言 | 6.3.3基于栈的递归消除 |
第1章绪论 | 6.3.4线索二叉树 |
1.1数据结构的基础概念 | 6.3.5由遍历序列确定二叉树 |
1.2数据结构的内容 | 6.4树?森林和二叉树的关係 |
1.3算法 | 6.4.1树的存储结构 |
1.4算法描述 | 6.4.2树?森林与二叉树的相互转换 |
1.5算法性能评价 | 6.4.3树与森林的遍历 |
1.5.1算法的时间性能分析 | 6.5哈夫曼树及其套用 |
1.5.2算法的空间性能分析 | 6.5.1哈夫曼树 |
1.5.3算法性能选择 | 6.5.2哈夫曼编码 |
1.6数据结构与C语言表示 | 6.6并查集与等价类划分 |
1.6.1数据结构与程式设计的关联性 | 6.7总结与提高 |
1.6.2结构化程式设计与函式的模组化 | 6.7.1主要知识点 |
1.6.3面向对象与抽象数据类型 | 6.7.2典型题例 |
1.6.4算法描述规範与设计风格 | 习题 |
1.7关于学习数据结构 | 实习题 |
1.8总结与提高 | 第7章图 |
习题 | 7.1图的定义与基本术语 |
实习题 | 7.1.1图的定义 |
第2章线性表 | 7.1.2基本术语 |
2.1线性表的概念及其抽象数据类型定义 | 7.2图的存储结构 |
2.1.1线性表的逻辑结构 | 7.2.1邻接矩阵表示法 |
2.1.2线性表的抽象数据类型定义 | 7.2.2邻接表表示法 |
2.2线性表的顺序存储 | 7.2.3十字鍊表 |
2.2.1线性表的顺序存储结构 | 7.2.4邻接多重表 |
2.2.2线性表顺序存储结构上的基本运算 | 7.3图的遍历 |
2.3线性表的链式存储 | 7.3.1深度优先搜寻 |
2.3.1单鍊表 | 7.3.2广度优先搜寻 |
2.3.2单鍊表上的基本运算 | 7.4图的套用 |
2.3.3循环鍊表 | 7.4.1图的连通性问题 |
2.3.4双向鍊表 | 7.4.2有向无环图的套用 |
2.3.5静态鍊表 | 7.4.3最短路径问题 |
2.4线性表套用——一元多项式的表示及相加 | 7.5总结与提高 |
2.5顺序表与鍊表的综合比较 | 7.5.1主要知识点 |
2.5.1顺序表和鍊表的比较 | 7.5.2典型题例 |
2.5.2线性表链式存储方式的比较 | 习题 |
2.6总结与提高 | 实习题 |
2.6.1主要知识点 | 第8章查找 |
2.6.2典型题例 | 8.1查找的基本概念 |
习题 | 8.2基于线性表的查找法 |
实习题 | 8.2.1顺序查找法 |
第3章限定性线性表——栈与伫列 | 8.2.2折半查找法 |
3.1栈 | 8.2.3分块查找法 |
3.1.1栈的定义 | 8.3基于树的查找法 |
3.1.2栈的表示和实现 | 8.3.1二叉排序树 |
3.1.3栈的套用举例 | 8.3.2平衡二叉排序树 |
3.1.4栈与递归的实现 | 8.3.3B树 |
3.2伫列 | 8.4计算式查找法——哈希法 |
3.2.1伫列的定义 | 8.4.1哈希函式的构造方法 |
3.2.2伫列的表示和实现 | 8.4.2处理冲突的方法 |
3.2.3伫列的套用举例 | 8.4.3哈希表的查找过程 |
3.3总结与提高 | 8.4.4哈希法性能分析 |
3.3.1主要知识点 | 8.5总结与提高 |
3.3.2典型题例 | 8.5.1主要知识点 |
习题 | 8.5.2典型题例 |
实习题 | 习题 |
第4章串 | 实习题 |
4.1串的基本概念 | 第9章内部排序 |
4.2串的存储实现 | 9.1排序的基本概念 |
4.2.1定长顺序串 | 9.2插入类排序 |
4.2.2堆串 | 9.2.1直接插入排序 |
4.2.3块链串 | 9.2.2折半插入排序 |
4.3串的套用举例:简单的行编辑器 | 9.2.3希尔排序 |
4.4总结与提高 | 9.2.4小结 |
4.4.1主要知识点 | 9.3交换类排序 |
4.4.2典型题例 | 9.3.1冒泡排序 |
习题 | 9.3.2快速排序 |
实习题 | 9.3.3小结 |
第5章数组与广义表 | 9.4选择类排序 |
5.1数组的定义与运算 | 9.4.1简单选择排序 |
5.2数组的顺序存储与实现 | 9.4.2树形选择排序 |
5.3特殊矩阵的压缩存储 | 9.4.3堆排序 |
5.3.1规律分布的特殊矩阵 | 9.4.4小结 |
5.3.2稀疏矩阵 | 9.5归併排序 |
5.4广义表 | 9.6分配类排序 |
5.4.1广义表的概念 | 9.6.1多关键字排序 |
5.4.2广义表的存储结构 | 9.6.2链式基数排序 |
5.4.3广义表的操作实现 | 9.6.3基数排序的顺序表实现 |
5.5总结与提高 | 9.7各种排序方法的综合比较 |
5.5.1主要知识点 | 9.8总结与提高 |
5.5.2典型题例 | 9.8.1主要知识点 |
习题 | 9.8.2典型题例 |
实习题 | 习题 |
第6章树与二叉树 | 实习题 |
6.1树的定义与基本术语 | 第10章外部排序 |
6.2二叉树 | 10.1外排序的基本方法 |
6.2.1二叉树的定义与基本操作 | 10.1.1磁碟排序 |
6.2.2二叉树的性质 | 10.1.2磁带排序 |
6.2.3二叉树的存储结构 | 10.2总结与提高 |
6.3二叉树的遍历与线索化 | 习题 |
6.3.1二叉树的遍历 | 参考文献 |
6.3.2遍历算法套用 | 着作权 |
教学资源
课程资源
《数据结构——用C语言描述(第2版)》配有数字课程,为读者提供电子教案、教学 视频、算法拓展、示例代码、算法C实现模板、课程设计与实习、试卷及解析、选学内容等辅助教学内容。
针对教材各章难点及重点提供了教学视频,可通过扫描二维码的方式进行线上学习。
教材特色
该书以抽象数据类型为中心,採用面向对象的新观点,将数据结构课程内容分为基本概念、基本结构、基本技术三个层次,贯穿了计算机科学中的一些重要的问题求解技术,符合学生的认知规律。
使用标準C作为算法描述语言,使之与目前大多数院校讲授的第一门程式语言课程衔接;每章附有小结与典型例题,形成梯度,便于读者总结提高。
作者简介
耿国华,女,教授,博士生导师,西北大学信息科学与技术学院副院长。兼任教育部文科高等学校文科计算机基础教学指导委员会副主任,西北大学计算机软体开发中心主任,主要研究方向为智慧型信息系统开发,资料库系统的教学与研究。主持承担了中国自然基金等项目,在核心期刊上发表学术论文60余篇,6次获得陕西省省部级科技进步奖,取得了系列研究成果,已形成在信息处理领域的研究特色。
张德同,男,1963年出生,汉族。1988年在西北大学计算机科学系获计算机软体硕士学位并留校任教。主要研究领域为:智慧型信息处理,算法分析与设计,Web 资料库套用。
周明全,陕西临潼人,二级教授,博士生导师,陕西省“三五人才”,享受中华人民共和国国务院特殊津贴专家。原任西北大学计算机科学系主任、北京师範大学信息科学与技术学院院长,现为教育部虚拟现实套用工程研究中心主任等职务。先后主持中国自然科学基金项目4项,重点项目1项,中国863计画重点项目1项,中国863计画子项目2项,科技支撑项目2项。