Jewels of stringology
The term "stringology" is a popular nickname for text algorithms, or algorithms on strings. This book deals with the most basic algorithms in the area. Most of them can be viewed as "algorithmic jewels" and deserve reader-friendly presentation. One of the main aims of the book is...
Uloženo v:
| Hlavní autoři: | , |
|---|---|
| Médium: | E-kniha Kniha |
| Jazyk: | angličtina |
| Vydáno: |
New Jersey ; Singapore
World Scientific
2002
World Scientific Publishing Company World Scientific Publishing |
| Vydání: | 1 |
| Témata: | |
| ISBN: | 9789810247829, 9810247826 |
| On-line přístup: | Získat plný text |
| Tagy: |
Přidat tag
Žádné tagy, Buďte první, kdo vytvoří štítek k tomuto záznamu!
|
Obsah:
- Intro -- Contents -- Preface -- 1 Stringology -- 1.1 Text file facilities -- 1.2 Dictionaries -- 1.3 Data compression -- 1.4 Applications of text algorithms in genetics -- 1.5 Efficiency of algorithms -- 1.6 Some notation and formal definitions -- 1.7 Some simple combinatorics of strings -- 1.8 Some other interesting strings -- 1.9 Cyclic shifts and primitive words -- Bibliographic notes -- 2 Basic string searching algorithms -- 2.1 Knuth-Morris-Pratt algorithm -- 2.2 Boyer-Moore algorithm and its variations -- Bibliographic notes -- 3 Preprocessing for basic searchings -- 3.1 Preprocessing patterns for MP and KMP algorithms -- 3.2 Table of prefixes -- 3.3 Preprocessing for Boyer-Moore algorithm -- 3.4 * Analysis of Boyer-Moore algorithm -- Bibliographic notes -- 4 On-line construction of suffix trees -- 4.1 Tries and their compact versions -- 4.2 Prelude to Ukkonen algorithm -- 4.3 Ukkonen algorithm -- Bibliographic notes -- 5 More on suffix trees -- 5.1 Several applications of suffix trees -- 5.2 McCreight algorithm -- Bibliographic notes -- 6 Subword graphs -- 6.1 Directed acyclic graph -- 6.2 On-line construction of subword graphs -- 6.3 The reverse perspective -- 6.4 Compact subword graphs -- Bibliographic notes -- 7 Text algorithms related to sorting -- 7.1 The naming technique: KMR algorithm -- 7.2 Two-dimensional KMR algorithm -- 7.3 Suffix arrays -- 7.4 Constructing suffix trees by sorting -- 7.5 The Lowest-Common-Ancestor dictionary -- 7.6 Suffix-Merge-Sort -- Bibliographic notes -- 8 Symmetries and repetitions in texts -- 8.1 Searching for symmetric words -- 8.2 Compositions of symmetric words -- 8.3 Searching for square factors -- Bibliographic notes -- 9 Constant-space searchings -- 9.1 Constant-space matching for easy patterns -- 9.2 MaxSuffix-Matching -- 9.3 Computation of maximal suffixes
- 17.4 Parameterized pattern matching -- 17.5 Breaking paragraphs into lines -- Bibliographic notes -- Bibliography -- Index
- 9.4 Matching patterns with short maximal suffixes -- 9.5 Two-way matching and magic decomposition -- 9.6 Sequential sampling for unordered alphabets -- 9.7 Galil-Seiferas algorithm -- 9.8 Cyclic equality of words -- Bibliographic notes -- 10 Text compression techniques -- 10.1 Substitutions -- 10.2 Static Huffman coding -- 10.3 Dynamic Huffman coding -- 10.4 Factor encoding -- Bibliographic notes -- 11 Automata-theoretic approach -- 11.1 Aho-Corasick automaton -- 11.2 Determinizing automata -- 11.3 Two-way pushdown automata -- Bibliographic notes -- 12 Approximate pattern matching -- 12.1 Edit distance -- 12.2 Longest common subsequence problem -- 12.3 String matching with errors -- 12.4 String matching with don't care symbols -- Bibliographic notes -- 13 Matching by dueling and sampling -- 13.1 String matching by duels -- 13.2 String matching by sampling -- Bibliographic notes -- 14 Two-dimensional pattern matching -- 14.1 Multi-pattern approach -- 14.2 Don't cares and non-rectangular patterns -- 14.3 2D-Pattern matching with mismatches -- 14.4 Multi-pattern matching -- 14.5 Matching by sampling -- 14.6 An algorithm fast on the average -- Bibliographic notes -- 15 Two-dimensional periodicities -- 15.1 Amir-Benson-Farach algorithm -- 15.2 Geometry of two-dimensional periodicities -- 15.3 * Patterns with large monochromatic centers -- 15.4 * A version of the Galil-Park algorithm -- Bibliographic notes -- 16 Parallel text algorithms -- 16.1 The abstract model of parallel computing -- 16.2 Parallel string-matching algorithms -- 16.3 * Splitting technique -- 16.4 Parallel KMR algorithm and application -- 16.5 Parallel Huffman coding -- 16.6 Edit distance - efficient parallel computation -- Bibliographic notes -- 17 Miscellaneous -- 17.1 Karp-Rabin string matching by hashing -- 17.2 Shortest common superstrings -- 17.3 Unique-decipherability problem

