وبلاگ بلیان

An Introduction to the Analysis of Algorithms, Second Edition

جلد کتاب An Introduction to the Analysis of Algorithms, Second Edition

معرفی کتاب «An Introduction to the Analysis of Algorithms, Second Edition» نوشتهٔ Finley Fenn و Robert Sedgewick and Philippe Flajolet، منتشرشده توسط نشر Addison-Wesley Professional در سال 2013. این کتاب در فرمت epub، زبان انگلیسی ارائه شده است.

Machine generated contents note: ch. One Analysis of Algorithms -- 1.1. Why Analyze an Algorithm? -- 1.2. Theory of Algorithms -- 1.3. Analysis of Algorithms -- 1.4. Average-Case Analysis -- 1.5. Example: Analysis of Quicksort -- 1.6. Asymptotic Approximations -- 1.7. Distributions -- 1.8. Randomized Algorithms -- ch. Two Recurrence Relations -- 2.1. Basic Properties -- 2.2. First-Order Recurrences -- 2.3. Nonlinear First-Order Recurrences -- 2.4. Higher-Order Recurrences -- 2.5. Methods for Solving Recurrences -- 2.6. Binary Divide-and-Conquer Recurrences and Binary Numbers -- 2.7. General Divide-and-Conquer Recurrences -- ch. Three Generating Functions -- 3.1. Ordinary Generating Functions -- 3.2. Exponential Generating Functions -- 3.3. Generating Function Solution of Recurrences -- 3.4. Expanding Generating Functions -- 3.5. Transformations with Generating Functions -- 3.6. Functional Equations on Generating Functions -- 3.7. Solving the Quicksort Median-of-Three Recurrence with OGFs -- 3.8. Counting with Generating Functions -- 3.9. Probability Generating Functions -- 3.10. Bivariate Generating Functions -- 3.11. Special Functions -- ch. Four Asymptotic Approximations -- 4.1. Notation for Asymptotic Approximations -- 4.2. Asymptotic Expansions -- 4.3. Manipulating Asymptotic Expansions -- 4.4. Asymptotic Approximations of Finite Sums -- 4.5. Euler-Maclaurin Summation -- 4.6. Bivariate Asymptotics -- 4.7. Laplace Method -- 4.8."Normal" Examples from the Analysis of Algorithms -- 4.9."Poisson" Examples from the Analysis of Algorithms -- ch. Five Analytic Combinatorics -- 5.1. Formal Basis -- 5.2. Symbolic Method for Unlabelled Classes -- 5.3. Symbolic Method for Labelled Classes -- 5.4. Symbolic Method for Parameters -- 5.5. Generating Function Coefficient Asymptotics -- ch. Six Trees -- 6.1. Binary Trees -- 6.2. Forests and Trees -- 6.3.Combinatorial Equivalences to Trees and Binary Trees -- 6.4. Properties of Trees -- 6.5. Examples of Tree Algorithms -- 6.6. Binary Search Trees -- 6.7. Average Path Length in Catalan Trees -- 6.8. Path Length in Binary Search Trees -- 6.9. Additive Parameters of Random Trees -- 6.10. Height -- 6.11. Summary of Average-Case Results on Properties of Trees -- 6.12. Lagrange Inversion -- 6.13. Rooted Unordered Trees -- 6.14. Labelled Trees -- 6.15. Other Types of Trees -- ch. Seven Permutations -- 7.1. Basic Properties of Permutations -- 7.2. Algorithms on Permutations -- 7.3. Representations of Permutations -- 7.4. Enumeration Problems -- 7.5. Analyzing Properties of Permutations with CGFs -- 7.6. Inversions and Insertion Sorts -- 7.7. Left-to-Right Minima and Selection Sort -- 7.8. Cycles and In Situ Permutation -- 7.9. Extremal Parameters -- ch. Eight Strings and Tries -- 8.1. String Searching -- 8.2.Combinatorial Properties of Bitstrings -- 8.3. Regular Expressions -- 8.4. Finite-State Automata and the Knuth-Morris-Pratt Algorithm -- 8.5. Context-Free Grammars -- 8.6. Tries -- 8.7. Trie Algorithms -- 8.8.Combinatorial Properties of Tries -- 8.9. Larger Alphabets -- ch. Nine Words and Mappings -- 9.1. Hashing with Separate Chaining -- 9.2. The Balls-and-Urns Model and Properties of Words -- 9.3. Birthday Paradox and Coupon Collector Problem -- 9.4. Occupancy Restrictions and Extremal Parameters -- 9.5. Occupancy Distributions -- 9.6. Open Addressing Hashing -- 9.7. Mappings -- 9.8. Integer Factorization and Mappings.

Despite growing interest, basic information on methods and models for mathematically analyzing algorithms has rarely been directly accessible to practitioners, researchers, or students. An Introduction to the Analysis of Algorithms, Second Edition, organizes and presents that knowledge, fully introducing primary techniques and results in the field.

Robert Sedgewick and the late Philippe Flajolet have drawn from both classical mathematics and computer science, integrating discrete mathematics, elementary real analysis, combinatorics, algorithms, and data structures. They emphasize the mathematics needed to support scientific studies that can serve as the basis for predicting algorithm performance and for comparing different algorithms on the basis of performance.

Techniques covered in the first half of the book include recurrences, generating functions, asymptotics, and analytic combinatorics. Structures studied in the second half of the book include permutations, trees, strings, tries, and mappings. Numerous examples are included throughout to illustrate applications to the analysis of algorithms that are playing a critical role in the evolution of our modern computational infrastructure.

Improvements and additions in this new edition include

  • Upgraded figures and code
  • An all-new chapter introducing analytic combinatorics
  • Simplified derivations via analytic combinatorics throughout

The book’s thorough, self-contained coverage will help readers appreciate the field’s challenges, prepare them for advanced results-covered in their monograph Analytic Combinatorics and in Donald Knuth’s The Art of Computer Programming books-and provide the background they need to keep abreast of new research.

[Sedgewick and Flajolet] are not only worldwide leaders of the field, they also are masters of exposition. I am sure that every serious computer scientist will find this book rewarding in many ways.

-From the Foreword by Donald E. Knuth

A thorough overview of the primary techniques and models used in the mathematical analysis of algorithms. This book draws upon classical mathematical material from discrete mathematics, elementary real analysis, and combinations and discusses properties of discrete structures and covers the analysis of a variety of classic forting, searching, and string processing algorithms.

Despite growing interest, basic information on methods and models for mathematically analyzing algorithms has rarely been directly accessible to practitioners, researchers, or students. An Introduction to the Analysis of Algorithms, Second Edition, organizes and presents that knowledge, fully introducing primary techniques and results in the field. Robert Sedgewick and the late Philippe Flajolet have drawn from both classical mathematics and computer science, integrating discrete mathematics, elementary real analysis, combinatorics, algorithms, and data structures. They emphasize the mathematics needed to support scientific studies that can serve as the basis for predicting algorithm performance and for comparing different algorithms on the basis of performance. Techniques covered in the first half of the book include recurrences, generating functions, asymptotics, and analytic combinatorics. Structures studied in the second half of the book include permutations, trees, strings, tries, and mappings. Numerous examples are included throughout to illustrate applications to the analysis of algorithms that are playing a critical role in the evolution of our modern computational infrastructure. Improvements and additions in this new edition include Upgraded figures and code An all-new chapter introducing analytic combinatorics Simplified derivations via analytic combinatorics throughout The book's thorough, self-contained coverage will help readers appreciate the field's challenges, prepare them for advanced results—covered in their monograph Analytic Combinatorics and in Donald Knuth's The Art of Computer Programming books—and provide the background they need to keep abreast of new research. "[Sedgewick and Flajolet] are not only worldwide leaders of the field, they also are masters of exposition. I am sure that every serious computer scientist will find this book rewarding in many ways." —From the Foreword by Donald E. Knuth This book provides a thorough introduction to the primary techniques used in the mathematical analysis of algorithms. The authors draw from classical mathematical material, including discrete mathematics, elementary real analysis, and combinatories, as well as from classical computer science material, including algorithms and data structures. They focus on "average-case" or "probabilistic" analysis, although they also cover the basic mathematical tools required for "worst-case" or "complexity" analysis. Topics include recurrences, generating functions, asymptotics, trees, strings, maps, and an analysis of sorting, tree search, string search, and hashing algorithms. Despite growing interest, basic information on methods and models for mathematically analysing algorithms has rarely been directly accessible to practitioners, researchers, or students. An Introduction to the Analysis of Algorithms organises and presents that knowledge, fully introducing primary techniques and results in the field. Authors Robert Sedgewick and the late Philippe Flajolet emphasise the mathematics needed to support scientific studies that can serve as the basis for predicting algorithm performance and for comparing different algorithms on the basis of performance. Improvements a Foreword Notation Analysis of Algorithms Recurrence Relations Generating Functions Asymptotic Approximations Analytic Combinatorics Trees Permutations Strings and Tries Words and Mappings List of Theorems List of Tables List of Figures Index
دانلود کتاب An Introduction to the Analysis of Algorithms, Second Edition