第一部分 控制部分
第2章 有限自动机(FA)模型
2.1 引言
2.2 有限自动机的定义
2.3 有限自动机的数学模型
2.4 FA的表示
2.5 有限状态识别器(FSR)与有限状态生成器(FSG)
2.6 不确定的FA(NDFA)
2.7 正规表达式及正规语言
2.8 正规表达式与FA的等价性
2.9 计算能力
2.10 小结
习题二
第3章 下推自动机(PDA)模型
3.1 引言
3.2 PDA的定义与表示
3.3 产生式文法
3.4 CNF文法
3.5 PDA的计算能力
3.6 小结
习题三
第4章 图灵机(TM)模型
4.1 引言
4.2 图灵机模型定义
4.3 结实程序和通用TM
4.4 TM与FA和PDA(NDPDA)的关系
4.5 TM的计算能力
4.6 TM模型与Von Neumann计算机的等价性
4.7 不可计算性
4.8 小结
习题四
第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 小结
习题七
第8章 抽象数据类型
8.1 引言
8.2 线性结构
8.3 非线性结构
8.4 数据的表示
8.5 抽象数据类型的封装
8.6 小结
习题八
第9章 抽象数据类型封装
9.1 引言
9.2 子程序封装
9.3 封装机制
9.4 继承封装
9.5 面向对象的封装
9.6 小结
习题九
第三部分 程序
第10章 算法
10.1 引言
10.2 算法的一般分析
10.3 递归算法
10.4 迭代算法
10.5 面向对象的程序设计
10.6 小结
习题十
第11章 程序正确性分析与证明
11.1 引言
11.2 FCL/2结构的表示
11.3 其他控制结构的表示
11.4 程式的表示
11.5 程序的形式描述与证明
11.6 程序正确性证明
11.7 计算WP:语言的语义
11.8 正确性论证的脆弱性
11.9 确认:测试与验证
11.10 小结
习题十一
第12章 计算复杂度分析与估算
12.1 引言
12.2 复杂性测量
12.3 两个简单的例子
12.4 阶算法
12.5 提高效率的几个问题
12.6 性能的实验测定
12.7 性能分析测定
12.8 小结
习题十二
参考文献