编程珠玑(续)(修订版)

编程珠玑(续)(修订版)

出版信息

【美】Jon Bentley 乔恩•本特利 / 钱丽艳、刘田 / 人民邮电出版社 / 2015-2 / CNY 35.00

内容简介

历史上最伟大的计算机科学著作之一

融深邃思想、实战技术与趣味轶事于一炉的奇书

带你真正领略计算机科学之美

多年以来,当程序员们推选出最心爱的计算机图书时,《编程珠玑》总是位于前列。正如自然界里珍珠出自细沙对牡蛎的磨砺,计算机科学大师Jon Bentley以其独有的洞察力和创造力,从磨砺程序员的实际问题中凝结出一篇篇不朽的编程“珠玑”,成为世界计算机界名刊《ACM通讯》历史上最受欢迎的专栏,最终结集为两部不朽的计算机科学经典名著,影响和激励着一代又一代程序员和计算机科学工作者。本书为第二卷,秉承了第一卷的风格,但本书涉及的范围更广,包括文档、小语言、性能监视、图形输出等。

在书中,作者选取许多具有典型意义的复杂编程和算法问题,生动描绘了历史上众大师们在探索解决方案中发生的轶事、走过的弯路和不断精益求精的历程,引导读者像真正的程序员和软件工程师那样富于创新性地思考,并透彻阐述和总结了许多独特而精妙的设计原则、思考和解决问题的方法以及实用程序设计技巧。每章后所附习题极具挑战性和启发性,书末给出了简洁的解答。

本书是计算机科学方面的经典名著《编程珠玑》的姊妹篇,讲述了对于程序员有共性的知识。本书延续了《编程珠玑》的特色,通过一些精心设计的有趣而又颇具指导意义的程序,对实用程序设计技巧及基本设计原则进行透彻而睿智的描述,为复杂的编程问题提供清晰而完备的解决思路。书中涵盖了程序员操纵程序的技术、程序员取舍的技巧、输入和输出设计以及算法示例,这些内容结合成一个有机的整体,如一串串珠玑展示给程序员。本书对各个层次的程序员都具有很高的阅读价值。

“《编程珠玑》是对我职业生涯早期影响最大的书之一,其中的许多真知灼见多年之后仍然使我受益匪浅。”

——Steve McConnell,软件工程大师,IEEE Software前主编,《代码大全》作者

作者简介

Jon Bentley 世界著名计算机科学家,被誉为影响算法发展的十位大师之一。他先后任职于卡内基-梅隆大学(1976~1982)、贝尔实验室(1982~2001)和Avaya实验室(2001年至今)。在卡内基-梅隆大学担任教授期间,他培养了包括Tcl语言设计者John Ousterhout、Java语言设计者James Gosling、《算法导论》作者之一Charles Leiserson在内的许多计算机科学大家。2004年荣获Dr. Dobb's程序设计卓越奖。

译者简介

钱丽艳 北京大学信息科学技术学院基础实验教学研究所软件实验室主任、高级工程师、毕业于国防科技大学,目前主要从事数值计算、程序设计方面的研究工作。

刘田 北京大学信息科学技术学院软件研究所副教授、中国电子学会电路与系统分会图论与系统优化专业委员会秘书长、中国计算机学会和中国电子学会高级会员,毕业于中国科学技术大学,目前主要从事算法分析和计算复杂度、量子信息处理等方面的研究工作,翻译出版了多部国外著名离散数学和计算机理论教材。

目录

第一部分 编 程 技 术
第1 章 性能监视工具  3
1.1 计算素数  3
1.2 使用性能监视工具  7
1.3 专用的性能监视工具   8
1.4 开发性能监视工具  10
1.5 原理  11
1.6 习题  11
1.7 深入阅读  12
第2 章 关联数组  13
2.1 Awk 中的关联数组   13
2.2 有穷状态机模拟器   16
2.3 拓扑排序  17
2.4 原理  20
2.5 习题  21
2.6 深入阅读  22
第3 章 程序员的忏悔   23
3.1 二分搜索  24
3.2 选择算法  26
3.3 子程序库  28
3.4 原理  30
3.5 习题  31
第4 章 自描述数据  33
4.1 名字—值对  33
4.2 记录来历  36
4.3 排序实验  37
4.4 原理  39
4.5 习题  39
第二部分 实 用 技 巧
第5 章 劈开戈尔迪之结 43
5.1 小测验  43
5.2 解答  44
5.3 提示  44
5.4 原理  47
5.5 习题  48
5.6 深入阅读  49
5.7 调试(边栏)   49
第6 章 计算机科学箴言集 51
6.1 编码  52
6.2 用户界面  53
6.3 调试  53
6.4 性能  54
6.5 文档  56
6.6 软件管理  56
6.7 其他  58
6.8 原理  58
6.9 习题  58
6.10 深入阅读  60
第7 章 粗略估算  61
7.1 头脑热身  61
7.2 性能的经验法则  62
7.3 Little 定律  64
7.4 原理  65
7.5 习题  66
7.6 深入阅读  67
7.7 日常速算(边栏)   67
第8 章 人员备忘录  69
8.1 备忘录  69
8.2 原理  71
8.3 深入阅读  71
第三部分 人性化I/O
第9 章 小语言  75
9.1 Pic 语言  76
9.2 视角  79
9.3 Pic 预处理器  81
9.4 用来实现Pic 的小语言83
9.5 原理  87
9.6 习题  88
9.7 深入阅读  89
第10 章 文档设计  91
10.1 表格  92
10.2 三条设计原则  94
10.3 插图  94
10.4 文本  96
10.5 合适的媒介  98
10.6 原理  100
10.7 习题  101
10.8 深入阅读  101
10.9 次要问题目录(边栏) 101
第11 章 图形化输出  103
11.1 实例研究  103
11.2 显示结果取样  105
11.3 原理  107
11.4 习题  108
11.5 深入阅读  110
11.6 拿破仑远征莫斯科(边栏) 110
第12 章 对调查的研究113
12.1 有关民意调查的问题113
12.2 语言  114
12.3 图片  117
12.4 原理  119
12.5 习题  120
第四部分 算 法
第13 章 绝妙的取样  123
13.1 取样算法一瞥  123
13.2 Floyd 算法  124
13.3 随机排列  125
13.4 原理  127
13.5 习题  127
13.6 深入阅读  128
第14 章 编写数值计算程序129
14.1 问题  129
14.2 牛顿迭代  130
14.3 良好的起点  132
14.4 代码  133
14.5 原理  135
14.6 习题  135
14.7 深入阅读  137
14.8 数值算法的力量(边栏) 137
第15 章 选择  141
15.1 问题  141
15.2 程序  142
15.3 运行时间分析  145
15.4 原理  148
15.5 习题  149
15.6 深入阅读  151
附录A C 和Awk 语言  153
附录B 子程序库  157
部分习题答案  165
索引    181

本文地址:https://www.codercto.com/books/d/593.html

在线进制转换器

在线进制转换器

各进制数互转换器

HTML 编码/解码

HTML 编码/解码

HTML 编码/解码

SHA 加密

SHA 加密

SHA 加密工具