书籍详情
数据结构(C语言描述)
作者:殷人昆 编著
出版社:清华大学出版社
出版时间:2012-10-01
ISBN:9787302291190
定价:¥43.00
购买这本书可以去
内容简介
《清华大学计算机系列教材:数据结构(C语言描述)》是根据2007年教育部颁发的《高等学校计算机科学与技术专业公共核心知识体系与课程》规范和2011年修订的《全国硕士研究生入学统一考试计算机科学与技术学科联考计算机学科专业基础综合考试大纲》编写的数据结构主教材。全书共分10章。第1章介绍数据结构的地位和主要知识点、数据结构和算法的基本概念和算法分析的简单方法,以及C语言编程的要点。第2章~第10章对应考试大纲的6个知识单元,包括线性表,栈、队列与数组,树与二叉树,图,查找,排序等,并做了适当延伸。作者在讨论每一个知识单元时,结合30多年教学的经验和考试辅导的体会,合理安排了教材内容,力求透彻、全面。对学生读书容易忽略的地方和隐藏在书中所讨论问题背后的东西都有适当的提示。《清华大学计算机系列教材:数据结构(C语言描述)》既可作为高校计算机科学与技术专业和软件工程专业本科生学习数据结构与算法课程的教材,也可以作为计算机专业考研的辅导教材或其他计算机及软件考试的复习教材,还可以作为从事计算机或软件系统开发的人员参考的学习资料。
作者简介
殷人昆,清华大学计算机系教授,1985年赴日本国东京理科大学做访问学者,研究方向为软件工程过程的质量管理和软件产品的质量评价。主要教学工作为计算机系大学本科“数据结构”、“软件工程”和研究生“软件工程设计与技术”、“软件项目管理”课程负责人,主持教育部——微软精品课程“数据结构”的建设。曾与人合作或单独编写和出版教材20余部.其中,《数据结构》教材被评为教育部普通高等教育“十一五”国家级规划教材,并于2005年获“北京市精品教材”。曾在核心刊物和专业会议发表论文多篇,并参加或主持多项科研项目。
目录
第1章 绪论
1.1 数据结构的概念及分类
1.1.1 为什么要学习数据结构
1.1.2 与数据结构相关的基本术语
1.1.3 数据结构的分类
1.1.4 数据结构的存储结构
1.1.5 定义在数据结构上的操作
1.1.6 “好”的数据结构
1.2 使用C语言描述数据结构
1.2.1 C语言的数据类型
1.2.2 算法的控制结构
1.2.3 算法的函数结构
1.2.4 动态存储分配
1.2.5 逻辑和关系运算的约定
1.2.6 输入与输出
1.3 算法和算法设计
1.3.1 算法的定义和特性
1.3.2 算法的设计步骤
1.3.3 算法设计的基本方法
1.4 算法分析与度量
1.4.1 算法的评价标准
1.4.2 算法的时间和空间复杂性度量
1.4.3 算法的渐进分析
小结
习题
第2章 线性表
2.1 线性表
2.1.1 线性表的定义和特点
2.1.2 线性表的主要操作
2.2 顺序表
2.2.1 顺序表的定义和特点
2.2.2 顺序表的结构定义
2.2.3 顺序表主要操作的实现
2.2.4 顺序表主要操作的性能分析
2.2.5 顺序表的应用举例
2.3 单链表
2.3.1 单链表的定义和特点
2.3.2 单链表的结构定义
2.3.3 单链表中指针的操作
2.3.4 单链表中的插入与删除
2.3.5 带头结点的单链表
2.3.6 单链表主要操作的性能分析
2.3.7 单链表的顺序访问与尾递归
2.3.8 单链表的应用举例
2.4 顺序表与线性链表的比较
2.5 线性链表的其他变形
2.5.1 循环链表
2.5.2 双向链表
2.5.3 静态链表
2.6 线性表的应用:一元多项式及其运算
2.6.1 一元多项式的表示
2.6.2 多项式的结构定义
2.6.3 多项式的加法
2.6.4 多项式的乘法
小结
习题
第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.3 栈的应用
3.3.1 数制转换
3.3.2 括号匹配
3.3.3 表达式的计算与优先级处理
3.3.4 栈与递归的实现
3.4 队列的应用
3.4.1 打印杨辉三角形与逐行处理
3.4.2 电路布线与两点间的最短路径
3.5 在算法设计中使用递归
3.5.1 汉诺塔问题与分治法
3.5.2 迷宫问题与回溯法
3.5.3 计算组合数与动态规划
3.6 双端队列
3.6.1 双端队列的概念
3.6.2 输入受限的双端队列
3.6.3 输出受限的双端队列
3.6.4 双端队列的顺序存储表示
3.6.5 双端队列的链接存储表示
小结
习题
第4章 数组、串和广义表
第5章 树与二叉树
第6章 树与二叉树的应用
第7章 图
第8章 查找
第9章 内排序
第10章 外排序
附录A 程序索引
附录B 实训作业要求与样例
参考文献
1.1 数据结构的概念及分类
1.1.1 为什么要学习数据结构
1.1.2 与数据结构相关的基本术语
1.1.3 数据结构的分类
1.1.4 数据结构的存储结构
1.1.5 定义在数据结构上的操作
1.1.6 “好”的数据结构
1.2 使用C语言描述数据结构
1.2.1 C语言的数据类型
1.2.2 算法的控制结构
1.2.3 算法的函数结构
1.2.4 动态存储分配
1.2.5 逻辑和关系运算的约定
1.2.6 输入与输出
1.3 算法和算法设计
1.3.1 算法的定义和特性
1.3.2 算法的设计步骤
1.3.3 算法设计的基本方法
1.4 算法分析与度量
1.4.1 算法的评价标准
1.4.2 算法的时间和空间复杂性度量
1.4.3 算法的渐进分析
小结
习题
第2章 线性表
2.1 线性表
2.1.1 线性表的定义和特点
2.1.2 线性表的主要操作
2.2 顺序表
2.2.1 顺序表的定义和特点
2.2.2 顺序表的结构定义
2.2.3 顺序表主要操作的实现
2.2.4 顺序表主要操作的性能分析
2.2.5 顺序表的应用举例
2.3 单链表
2.3.1 单链表的定义和特点
2.3.2 单链表的结构定义
2.3.3 单链表中指针的操作
2.3.4 单链表中的插入与删除
2.3.5 带头结点的单链表
2.3.6 单链表主要操作的性能分析
2.3.7 单链表的顺序访问与尾递归
2.3.8 单链表的应用举例
2.4 顺序表与线性链表的比较
2.5 线性链表的其他变形
2.5.1 循环链表
2.5.2 双向链表
2.5.3 静态链表
2.6 线性表的应用:一元多项式及其运算
2.6.1 一元多项式的表示
2.6.2 多项式的结构定义
2.6.3 多项式的加法
2.6.4 多项式的乘法
小结
习题
第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.3 栈的应用
3.3.1 数制转换
3.3.2 括号匹配
3.3.3 表达式的计算与优先级处理
3.3.4 栈与递归的实现
3.4 队列的应用
3.4.1 打印杨辉三角形与逐行处理
3.4.2 电路布线与两点间的最短路径
3.5 在算法设计中使用递归
3.5.1 汉诺塔问题与分治法
3.5.2 迷宫问题与回溯法
3.5.3 计算组合数与动态规划
3.6 双端队列
3.6.1 双端队列的概念
3.6.2 输入受限的双端队列
3.6.3 输出受限的双端队列
3.6.4 双端队列的顺序存储表示
3.6.5 双端队列的链接存储表示
小结
习题
第4章 数组、串和广义表
第5章 树与二叉树
第6章 树与二叉树的应用
第7章 图
第8章 查找
第9章 内排序
第10章 外排序
附录A 程序索引
附录B 实训作业要求与样例
参考文献
猜您喜欢