标题：计算机程序设计艺术卷3:排序与查找
图书信息
出版社: 人民邮电出版社; 第1版 (2010年10月1日)
外文书名: The Art of Computer Programming Vol 3:Sorting and Searching Second Edition
丛书名: 图灵原版计算机科学系列
精装: 780页
正文语种: 英语
开本: 16
ISBN: 9787115234995, 711523499X
条形码: 9787115234995
尺寸: 24.6 x 17.6 x 4.4 cm
重量: 1.5 Kg
作者简介
作者：（美国）Donald E.Knuth
Donald E.Knuth，1938年1月10日出生于美国明尼苏达州的米尔沃基，著名计算机科学家，算法与程序设计技术的先驱，斯坦福大学计算机系荣誉退休教授，计算机排版系统TEX和METAFONT字体系统的发明人，最年轻的图灵奖得主。他在计算机科学及数学领域出版和发表了多部具有广泛影响的著作和论文。
他获得了很多奖项和荣誉：
1971年获首届美国计算机协会（ACM）Grace Murray Hopper奖
·1973年当选为美国科学艺术学院院士
·1974年获美国计算机协会图灵奖
·1975年当选为美国国家科学院院士，同年荣获美国数学协会（MAA）福特奖（Lester R.Ford Award）
·1979年获卡特总统颁发的美国科学奖
·1981年当选为美国工程院院士
·1982年获计算机先锋奖（Computer Pioneer Award）
·1982年成为IEEE荣誉会员
·1986年荣获美国数学学会（AMS）斯蒂尔奖（Steele Award）
·1988年获富兰克林奖章（Franklin Medal）
·1994年获瑞典科学院Adelskold奖
·1995年获IEEE冯·诺依曼奖
·1996年获稻盛基金会京都奖（Kyoto Prize）
Knuth的中文名字高德纳广为人知，这是1977年他访问中国之前由姚期智教授的夫人姚储枫所取。
内容简介
《计算机程序设计艺术》系列被公认为计算机科学领域的权威之作，深入阐述了程序设计理论，对计算机领域的发展有着极为深远的影响。《计算机程序设计艺术 卷3:排序与查找(英文版·第2版)》是该系列的第3卷，扩展了第1卷中信息结构的内容，主要讲排序和查找。书中对排序和查找算法进行了详细的介绍，并对各种算法的效率做了大量的分析。
《计算机程序设计艺术 卷3:排序与查找(英文版·第2版)》适合从事计算机科学、计算数学等各方面工作的人员阅读，也适合高等院校相关专业的师生作为教学参考书，对于想深入理解计算机算法的读者，是一份必不可少的珍品。
媒体评论
这一多卷本的鸿篇巨著被公认为是对经典计算机科学的权威论述，数十年来，前3卷一直是广大学生、研究人员和业内人士学习程序设计理论和实践的无价之宝。
这是一部包含一切基础算法的宝典，是它教给了这一代软件开发人员关于计算机程序设计的绝大多数知识。
——Byte杂志1995年9月刊
无数的读者谈到过Knuth的著作对于自己的深刻影响。从事研究的人惊讶于他精美优雅的分析，而普通程序员则一直在卓有成效地利用书中提供的各种方案解决日常问题。这些书展现了作者的博观、清晰、精确和幽默，所有的人都钦佩不已。
我简直说不清楚这些书给我的学习和娱乐带来了多少欢乐时光。我在各种场合一有空就仔细研读，在车上，在餐馆，上班时，回到家里……甚至有次观看我儿子的球赛，趁他没上场的时候，我还拿出来看了一阵子。
——Charles Long
它本来是当参考书写的，但有些人却发现每一卷都可以兴致勃勃地从头读到尾。有位中国的程序员甚至把它比做读诗。
如果你自以为是一个很好的程序员，请去读读Knuth的《计算机程序设计艺术》吧……要是你真把它读下来了，就毫无疑问可以给我递简历了。
——比尔·盖茨
不管你的背景如何，只要你想认真地编写计算机程序。都有很好的理由把这套书的每一卷抱回家。便于研究和工作时随时翻阅。
20年来Knuth第一次全部修订了这3卷。我发现，只要翻一翻这些书，就会立竿见影地“镇住”计算机。
——Jonathan Laventhol
目录
Chapter 5 Sorting 1
5.1 Combinatorial Properties of Permutations 11
5.1.1 Inversions 11
5.1.2 Permutations of a Multiset 22
5.1.3 Runs 35
5.1.4 Tableaux and Involutions 47
5.2 Internal sorting 73
5.2.1 Sorting by Insertion 80
5.2.2 Sorting by Exchanging 105
5.2.3 Sorting by Selection 138
5.2.4 Sorting by Merging 158
5.2.5 Sorting by Distribution 168
5.3 Optimum Sorting 180
5.3.1 Minimum-Comparison Sorting 180
5.3.2 Minimum-Comparison Merging 197
5.3.3 Minimum-Comparison Selection 207
5.3.4 Networks for Sorting 219
5.4 External Sorting 248
5.4.1 Multiway Merging and Replacement Selection 252
5.4.2 The Polyphase Merge 267
5.4.3 The Cascade Merge 288
5.4.4 Reading Tape Backwards 299
5.4.5 The Oscillating Sort 311
5.4.6 Practical Considerations for Tape Merging 317
5.4.7 External Radix Sorting 343
5.4.8 Two-Tape Sorting 348
5.4.9 Disks and Drums 356
5.5 Summary, History, and Bibliography 380
Chapter 6 Searching 392
6.1 Sequential Searching 396
6.2 Searching by Comparison of Keys 409
6.2.1 Searching an Ordered Table 409
6.2.2 Binary Tree Searching 426
6.2.3 Balanced Trees 458
6.2.4 Multiway Trees 481
6.3 Digital Searching 492
6.4 Hashing 513
6.5 Retrieval on Secondary Keys 559
Answers to Exercises 584
Appendix A Tables of Numerical Quantities 748
1. Fundamental Constants (decimal) 748
2. Fundamental Constants (octal) 749
3. Harmonic Numbers, Bernoulli Numbers, Fibonacci Numbers 750
Appendix B Index to Notations 752
Index and Glossary 757