算法与数据结构.C语言版(第2版)
分類: 图书,计算机/网络,程序设计,C C++ C# VC VC++,
作者: 陈守孔 等编著
出 版 社: 机械工业出版社
出版时间: 2004-9-1字数:版次: 2页数: 263印刷时间:开本: 16开印次: 1纸张:I S B N : 9787111146209包装: 平装编辑推荐
本书可作为高等院校计算机及相关专业的教材,同时可供计算机科学及工程技术人员参考。
本书结合作者多年的教学实践,系统地介绍常用的、典型的数据结构(如线性表、栈、队列、串、数组和广义表、树、图等)和,算法,并且评估数据结构和算法的有效性以及对各种实用数据结构的代价和效率进行权衡。
本书特点
语言简明流畅,结构清晰合理,内容深入浅出。
采用类C语言描述数据结构和算法,详细地分析了算法设计方法。
每章都设有算法设计举例,每章后附有习题,供读者进一步练习。
附录中设有实验题目,使读者通过实践加深对理论内容的理解。
本书为教师配有电子教案,请登录华章网站(www.hzbook.com)下载.
内容简介
本书以通俗的语言,按照由易到难的原则,详细介绍了各种数据结构的基本概念、逻辑特性和物理特性,对各种结构定义了相应的抽象数据类型(ADT)。在各章末尾,还给出了算法设计举例和习题。
本书可作为高等院校计算机及相关专业的教材,同时可供计算机科学及工程技术人员参考。
目录
第1版前言
第2版前言
第1章 概论
1.1 什么是数据结构
1.2 数据结构的基本概念和术语
1.3 抽象数据类型及其表示与实现
1.4 算法和算法分析
1.5 类C语言描述
习题
第2章 线性表
2.1 线性表的类型定义
2.2 线性表的顺序表示和实现
2.3 线性表的链式表示和实现
2.4 线性表实现方法的比较
2.5 循环链表
2.6 双链表
2.7 静态链表
2.8 算法设计举例
习题
第3章 栈和队列
3.1 栈
3.2 栈的应用举例
3.3 栈与递归
3.4 队列
3.5 算法设计举例
习题
第4章 串
4.1 串的类型定义
4.2 串的表示和实现
4.3 串的模式匹配
4.4 串的应用举例
4.5 算法设计举例
习题
第5章 数组和广义表
5.1 数组的概念及其基本操作
5.2 数组的顺序存储
5.3 矩阵的压缩存储
5.4 广义表
5.5 算法设计举例
习题
第6章 树
6.1 树的概念及操作
6.2 二叉树
6.3 二叉树的遍历
6.4 线索二叉树
6.5 树和森林
6.6 哈夫曼树及其应用
6.7 算法设计举例
习题
第7章 图
7.1 图的定义和术语
7.2 图的存储结构
7.3 图的遍历
7.4 图的连通性问题
7.5 有向无环图及其应用
7.6 最短路径
7.7 算法设计举例
习题
第8章 动态存储管理
8.1 概述
8.2 可利用空间表及分配办法
8.3 边界标识法
8.4 伙伴系统
习题
第9章 查找
9.1 静态查找表上的查找
9.2 动态查找表上的查找
9.3 静列表上的查找
9.4 算法设计举例
习题
第10章 排序
10.1 概述
10.2 插入排序
10.3 交换排序
10.4 选择排序
10.5 归并排序
10.6 分配排序
10.7 各种内部排序方法的比较
10.8 外部排序
10.9 算法设计举例
习题
第11章 文件
11.1 基本概念
11.2 顺序文件
11.3 索引文件
11.4 索引顺序文件
11.5 散列文件
11.6 多关键定文件
习题
附录 上机实验题目
参考文献