第1章 引言
1.1 文学程序
1.2 程序设计风格
1.3 效率
1.4 扩展阅读
1.5 习题
第2章 接口与实现
2.1 接口
2.2 实现
2.3 抽象数据类型
2.4 客户程序的职责
2.5 效率
2.6 扩展阅读
2.7 习题
第3章 原子
3.1 接口
3.2 实现
3.3 扩展阅读
3.4 习题
第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 习题
第7章 链表
7.1 接口
7.2 实现
7.3 扩展阅读
7.4 习题
第8章 表
8.1 接口
8.2 例子:词频
8.3 实现
8.4 扩展阅读
8.5 习题
第9章 集合
9.1 接口
9.2 例子:交叉引用列表
9.3 实现
9.3.1 成员操作
9.3.2 集合操作
9.4 扩展阅读
9.5 习题
第10章 动态数组
10.1 接口
10.2 实现
10.3 扩展阅读
10.4 习题
第11章 序列
11.1 接口
11.2 实现
11.3 扩展阅读
11.4 习题
第12章 环
12.1 接口
12.2 实现
12.3 扩展阅读
12.4 习题
第13章 位向量
13.1 接口
13.2 实现
13.2.1 成员操作
13.2.2 比较
13.2.3 集合操作
13.3 扩展阅读
13.4 习题
第14章 格式化
14.1 接口
14.1.1 格式化函数
14.1.2 转换函数
14.2 实现
14.2.1 格式化函数
14.2.2 转换函数
14.3 扩展阅读
14.4 习题
第15章 低级字符串
15.1 接口
15.2 例子:输出标识符
15.3 实现
15.3.1 字符串操作
15.3.2 分析字符串
15.3.3 转换函数
15.4 扩展阅读
15.5 习题
第16章 高级字符串
16.1 接口
16.2 实现
16.2.1 字符串操作
16.2.2 内存管理
16.2.3 分析字符串
16.2.4 转换函数
16.3 扩展阅读
16.4 习题
第17章 扩展精度算术
17.1 接口
17.2 实现
17.2.1 加减法
17.2.2 乘法
17.2.3 除法和比较
17.2.4 移位
17.2.5 字符串转换
17.3 扩展阅读
17.4 习题
第18章 任意精度算术
18.1 接口
18.2 例子:计算器
18.3 实现
18.3.1 取反和乘法
18.3.2 加减法
18.3.3 除法
18.3.4 取幂
18.3.5 比较
18.3.6 便捷函数
18.3.7 移位
18.3.8 与字符串和整数的转换
18.4 扩展阅读
18.5 习题
第19章 多精度算术
19.1 接口
19.2 例子:另一个计算器
19.3 实现
19.3.1 转换
19.3.2 无符号算术
19.3.3 有符号算术
19.3.4 便捷函数
19.3.5 比较和逻辑操作
19.3.6 字符串转换
19.4 扩展阅读
19.5 习题
第20章 线程
20.1 接口
20.1.1 线程
20.1.2 一般信号量
20.1.3 同步通信通道
20.2 例子
20.2.1 并发排序
20.2.2 临界区
20.2.3 生成素数
20.3 实现
20.3.1 同步通信通道
20.3.2 线程
20.3.3 线程创建和上下文切换
20.3.4 抢占
20.3.5 一般信号量
20.3.6 MIPS和ALPHA上的上下文切换
20.4 扩展阅读
20.5 习题
附录A 接口摘要
参考书目