数据结构与算法——理论与实践
作者: 唐培和
出版时间:2015年1月
出版社:电子工业出版社
- 电子工业出版社
- 9787121244674
- 1-1
- 77682
- 0047151227-7
- 平装
- 16开
- 2015年1月
- 700
- 416
- 工学
- 软件工程
- TP311.12
- 学科基础
- 研究生、本科
本书既强调“算法”与“数据结构”之间紧密的依赖关系,也注重算法描述的简洁与干练;既有完整的理论体系,也有很好的应用案例。为了增强可理解性,本书案例与生活实践相联系。
本书以知识单元为基本构件,既可拆卸也可重组,内容丰富,表述详尽,可读性强,适合不同类型的本科院校按照不同的培养规格组织教学。
第1章 数据结构与算法概述
1.1 引言
1.1.1 《数据结构与算法》课程到底研究什么
1.1.2 《数据结构与算法》课程介绍
1.1.3 为什么要学习《数据结构与算法》课程
1.2 基本概念和术语
1.2.1 数据
1.2.2 数据项
1.2.3 数据元素
1.2.4 数据对象
1.2.5 数据结构
1.2.6 数据结构的形式化描述
1.2.7 数据的逻辑结构、存储结构与物理结构
1.2.8 数据结构实例
1.3 算法
1.3.1 什么是算法
1.3.2 算法的性质
1.3.3 算法和程序
1.4 算法的表示(描述)
1.4.1 自然语言
1.4.2 计算机语言
1.4.3 图形化工具
1.4.4 伪代码
1.5 算法设计的准则
1.5.1 正确性
1.5.2 可读性
1.5.3 健壮性
1.5.4 效率
1.6 算法效率分析
1.6.1 事后统计的方法
1.6.2 事前分析估算的方法
1.6.3 算法的空间复杂度
1.7 抽象数据类型
阅读材料
习题1
第2章 顺序存储结构的线性表
2.1 基本概念和操作
2.1.1 什么是线性表
2.1.2 线性表的逻辑结构
2.1.3 线性表的基本操作
2.1.4 线性表的顺序存储结构
2.1.5 线性表的插入与删除操作(算法)
2.1.6 顺序表应用举例
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.4 集合及其运算
2.4.1 集合的定义
2.4.2 集合运算
2.4.3 集合的顺序存储结构和操作实现
小结
习题2
第3章 链式存储结构的线性表
3.1 什么是链式存储结构的线性表
3.2 线性链表的操作(算法)
3.2.1 线性链表的构造
3.2.2 求表长
3.2.3 查找操作
3.2.4 线性链表的插入
3.2.5 线性链表的删除
3.3 栈的链式存储结构
3.4 队列的链式存储结构
3.5 循环链表
3.6 双向链表
3.7 静态链表
3.8 链表应用
3.9 一元多项式的存储和相加
3.10 集合的链式存储结构与操作
3.11 顺序表和链表的比较
习题3
第4章 串
第5章 数组、特殊矩阵与广义表
第6章 树与二叉树
第7章 图及其应用
第8章 查找与搜索引擎
第9章 排序