书籍详情
计算机程序设计艺术:英文版(第1卷 基本算法)
作者:(美)Donald E. Knuth著
出版社:清华大学出版社
出版时间:2002-09-01
ISBN:9787302058144
定价:¥248.00
购买这本书可以去
内容简介
《计算机程序设计艺术(中文版)(1-3卷精装全套)》《计算机程序设计艺术》专题该套图书共3卷,内容如下:卷1为基础运算法则,该书以基本的编程概念和技术为开始,然后讲述信息结构:计算机内信息的表示法,数据元素间的结构关系以及处理它们的有效方法。主要应用于模拟、数字方法、符号计算、软件和系统设计。许多简单和重要的运算法则和技术已添加到前一版本中,精确的初步计算部分已经修改,以适应当前趋势。第2卷对半数值算法领域做了全面介绍,分“随机数”和“算术”两章。本卷总结了主要算法范例及这些算法的基本理论,广泛剖析了计算机程序设计与数值分析间的相互联系。第3版中特别值得注意的是Knuth对随机数生成程序的重新处理和对形式幂级数计算的讨论。卷3为分拣和搜索,这是本书的第1个修订版,它是对计算机分拣和搜索的一流技术的最全面的研究,它扩展了卷1中数据结构的处理方法,将大小数据库以及内存和外部存储都包含在内。本书包括对计算机方法仔细检查的选择方案,和其效率的大量分析。本书该版的独特之处在于优化了的分拣,以及对通用散列法和排列法的新的理论论述。
作者简介
Donald.E.Knuth(唐纳德.E.克努特,中文名高德纳)是算法和程序设计技术的先驱者,是计算机排版系统TEX和METAFONT的发明者,他因这些成就和大量创造性的影响深远的著作(19部书和160篇论文)而誉满全球。作为斯坦福大学计算机程序设计艺术的荣誉退休教授,他当前正全神贯注于完成其关于计算机科学的史诗性的七卷集。这一伟大工程在1962年他还是加利福尼亚理工学院的研究生时就开始了。Knuth教授获得了许多奖项和荣誉,包括美国计算机协会图灵奖(ACMTuringAward),美国前总统卡特授予的科学金奖(MedalofScience),美国数学学会斯蒂尔奖(AMSSteelePrize),以及1996年11月由于发明先进技术而荣获的备受推崇的京都奖(KyotoPrize)。Knuth教授现与其妻Jill生活于斯坦福校园内。访问Knuth教授的个人主页,可以获得有关本书及本系列其他未出版图书的更多信息:www-cs-faculty.stanford.edu/~knuth
目录
Chapter 1 Basic Concepts
1.1. Algorithms
1.2. Mathematical Preliminaries
1.2.1. Mathematical Induction
1.2.2. Numbers, Powers, and Logarithms
1.2.3. Sums and Products
1.2.4. Integer Functions and Elementary Number Theory
1.2.5. Permutations and Factorials
1.2.6. Binomial Coefficients
1.2.7. Harmonic Numbers
1.2.8. Fibonacci Numbers
1.2.9. Generating Functions
1.2.10. Analysis of an Algorithm
*1.2.11. Asymptotic Representations
*1.2.11.1. The O-notation
*1.2.11.2. Euler's summation formula
*1.2.11.3. Some asymptotic calculations
1.3. MIX 124
1.3.1. Description of MIX
1.3.2. The MIX Assembly Language
1.3.3. Applications to Permutations
1.4. Some Fundamental Programming Techniques
1.4.1. Subroutines
1.4.2. Goroutines
1.4.3. Interpretive Routines
1.4.3.1. A MIX simulator
*1.4.3.2. Trace routines
1.4.4. Input and Output
1.4.5. History and Bibliography
Chapter 2 Information Structures
2.1. Introduction
2.2. Linear Lists
2.2.1. Stacks, Queues, and Deques
2.2.2. Sequential Allocation
2.2.3. Linked Allocation
2.2.4. Circular Lists
2.2.5. Doubly Linked Lists
2 2.6. Arrays and Orthogonal Lists
2.3. Trees
2.3.1. Traversing Binary Trees
2.3.2. Binary Tree Representation of Trees
2.3.3. Other Representations of Trees
2.3.4. Basic Mathematical Properties of Trees
2.3.4.1. Free trees
2.3.4.2. Oriented trees
*2.3.4.3. The "infinity lemma"
*2.3.4.4. Enumeration of trees
2.3.4.5. Path length
*2.3.4.6. History and bibliography
2.3.5. Lists and Garbage Collection
2.4. Multilinked Structures
2.5. Dynamic Storage Allocation
History and Bibliography
Answers to Exercises
Appendix A Tables of Numerical Quantities
1. Fundamental Constants (decimal)
2. Fundamental Constants (octal)
3. Harmonic Numbers, Bernoulli Numbers, Fibonacci Numbers
Appendix B Index to Notations
Index and Glossary
Excerpt
Chapter 3 Random Numbers.
Introduction.
Generating Uniform Random Numbers.
The Linear Congruential Method.
Other Methods.
Statistical Tests.
General Test Procedures for Studying Random Data.
Empirical Tests.
Theoretical Tests.
The Spectral Test.
Other Types of Random Quantities.
Numerical Distributions.
Random Sampling and Shuffling.
What Is a Random Sequence?
Summary.
Chapter 4 Arithmetic.
Positional Number Systems.
Floating Point Arithmetic.
Single-Precision Calculations.
Accuracy of Floating Point Arithmetic.
Double-Precision Calculations.
Distribution of Floating Point Numbers.
Multiple Precision Arithmetic.
The Classical Algorithms.
Modular Arithmetic.
How Fast Can We Multiply?.
Radix Conversion.
Rational Arithmetic.
Fractions.
The Greatest Common Divisor.
Analysis of Euclid's Algorithm.
Factoring into Primes.
Polynomial Arithmetic.
Division of Polynomials.
Factorization of Polynomials.
Evaluation of Powers.
Evaluation of Polynomials.
Manipulation of Power Series.
Answers to Exercises.
Appendix A: Tables of Numerical Quantities.
Fundamental Constants (decimal).
Fundamental Constants (octal).
Harmonic Numbers, Bernoulli Numbers, Fibonacci Numbers.
Appendix B: Index to Notations.
Index and Glossary.
Chapter 5 Sorting.
Combinatorial Properties of Permutations.
Inversions.
Permutations of a Multiset.
Runs.
Tableaux and Involutions.
Internal sorting.
Sorting by Insertion.
Sorting by Exchanging.
Sorting by Selection.
Sorting by Merging.
Sorting by Distribution.
Optimum Sorting.
Minimum-Comparison Sorting.
Minimum-Comparison Merging.
Minimum-Comparison Selection.
Networks for Sorting.
External Sorting.
Multiway Merging and Replacement Selection.
The Polyphase Merge.
The Cascade Merge.
Reading Tape Backwards.
The Oscillating Sort.
Practical Considerations for Tape Merging.
External Radix Sorting.
Two-Tape Sorting.
Disks and Drums.
Summary, History, and Bibliography.
Chapter 6 Searching.
Sequential Searching.
Searching by Comparison of Keys.
Searching an Ordered Table.
Binary Tree Searching.
Balanced Trees.
Multiway Trees.
Digital Searching.
Hashing.
Retrieval on Secondary Keys.
Answers to Exercises.
Appendix A: Tables of Numerical Quantities.
Fundamental Constants (decimal).
Fundamental Constants (octal).
Harmonic Numbers, Bernoulli Numbers, Fibonacci Numbers.
Appendix B:Index to Notations.
Index and Glossary.
1.1. Algorithms
1.2. Mathematical Preliminaries
1.2.1. Mathematical Induction
1.2.2. Numbers, Powers, and Logarithms
1.2.3. Sums and Products
1.2.4. Integer Functions and Elementary Number Theory
1.2.5. Permutations and Factorials
1.2.6. Binomial Coefficients
1.2.7. Harmonic Numbers
1.2.8. Fibonacci Numbers
1.2.9. Generating Functions
1.2.10. Analysis of an Algorithm
*1.2.11. Asymptotic Representations
*1.2.11.1. The O-notation
*1.2.11.2. Euler's summation formula
*1.2.11.3. Some asymptotic calculations
1.3. MIX 124
1.3.1. Description of MIX
1.3.2. The MIX Assembly Language
1.3.3. Applications to Permutations
1.4. Some Fundamental Programming Techniques
1.4.1. Subroutines
1.4.2. Goroutines
1.4.3. Interpretive Routines
1.4.3.1. A MIX simulator
*1.4.3.2. Trace routines
1.4.4. Input and Output
1.4.5. History and Bibliography
Chapter 2 Information Structures
2.1. Introduction
2.2. Linear Lists
2.2.1. Stacks, Queues, and Deques
2.2.2. Sequential Allocation
2.2.3. Linked Allocation
2.2.4. Circular Lists
2.2.5. Doubly Linked Lists
2 2.6. Arrays and Orthogonal Lists
2.3. Trees
2.3.1. Traversing Binary Trees
2.3.2. Binary Tree Representation of Trees
2.3.3. Other Representations of Trees
2.3.4. Basic Mathematical Properties of Trees
2.3.4.1. Free trees
2.3.4.2. Oriented trees
*2.3.4.3. The "infinity lemma"
*2.3.4.4. Enumeration of trees
2.3.4.5. Path length
*2.3.4.6. History and bibliography
2.3.5. Lists and Garbage Collection
2.4. Multilinked Structures
2.5. Dynamic Storage Allocation
History and Bibliography
Answers to Exercises
Appendix A Tables of Numerical Quantities
1. Fundamental Constants (decimal)
2. Fundamental Constants (octal)
3. Harmonic Numbers, Bernoulli Numbers, Fibonacci Numbers
Appendix B Index to Notations
Index and Glossary
Excerpt
Chapter 3 Random Numbers.
Introduction.
Generating Uniform Random Numbers.
The Linear Congruential Method.
Other Methods.
Statistical Tests.
General Test Procedures for Studying Random Data.
Empirical Tests.
Theoretical Tests.
The Spectral Test.
Other Types of Random Quantities.
Numerical Distributions.
Random Sampling and Shuffling.
What Is a Random Sequence?
Summary.
Chapter 4 Arithmetic.
Positional Number Systems.
Floating Point Arithmetic.
Single-Precision Calculations.
Accuracy of Floating Point Arithmetic.
Double-Precision Calculations.
Distribution of Floating Point Numbers.
Multiple Precision Arithmetic.
The Classical Algorithms.
Modular Arithmetic.
How Fast Can We Multiply?.
Radix Conversion.
Rational Arithmetic.
Fractions.
The Greatest Common Divisor.
Analysis of Euclid's Algorithm.
Factoring into Primes.
Polynomial Arithmetic.
Division of Polynomials.
Factorization of Polynomials.
Evaluation of Powers.
Evaluation of Polynomials.
Manipulation of Power Series.
Answers to Exercises.
Appendix A: Tables of Numerical Quantities.
Fundamental Constants (decimal).
Fundamental Constants (octal).
Harmonic Numbers, Bernoulli Numbers, Fibonacci Numbers.
Appendix B: Index to Notations.
Index and Glossary.
Chapter 5 Sorting.
Combinatorial Properties of Permutations.
Inversions.
Permutations of a Multiset.
Runs.
Tableaux and Involutions.
Internal sorting.
Sorting by Insertion.
Sorting by Exchanging.
Sorting by Selection.
Sorting by Merging.
Sorting by Distribution.
Optimum Sorting.
Minimum-Comparison Sorting.
Minimum-Comparison Merging.
Minimum-Comparison Selection.
Networks for Sorting.
External Sorting.
Multiway Merging and Replacement Selection.
The Polyphase Merge.
The Cascade Merge.
Reading Tape Backwards.
The Oscillating Sort.
Practical Considerations for Tape Merging.
External Radix Sorting.
Two-Tape Sorting.
Disks and Drums.
Summary, History, and Bibliography.
Chapter 6 Searching.
Sequential Searching.
Searching by Comparison of Keys.
Searching an Ordered Table.
Binary Tree Searching.
Balanced Trees.
Multiway Trees.
Digital Searching.
Hashing.
Retrieval on Secondary Keys.
Answers to Exercises.
Appendix A: Tables of Numerical Quantities.
Fundamental Constants (decimal).
Fundamental Constants (octal).
Harmonic Numbers, Bernoulli Numbers, Fibonacci Numbers.
Appendix B:Index to Notations.
Index and Glossary.
猜您喜欢