Journal ArticleDOI
Efficient string matching: an aid to bibliographic search
Reads0
Chats0
TLDR
A simple, efficient algorithm to locate all occurrences of any of a finite number of keywords in a string of text that has been used to improve the speed of a library bibliographic search program by a factor of 5 to 10.Abstract:
This paper describes a simple, efficient algorithm to locate all occurrences of any of a finite number of keywords in a string of text. The algorithm consists of constructing a finite state pattern matching machine from the keywords and then using the pattern matching machine to process the text string in a single pass. Construction of the pattern matching machine takes time proportional to the sum of the lengths of the keywords. The number of state transitions made by the pattern matching machine in processing the text string is independent of the number of keywords. The algorithm has been used to improve the speed of a library bibliographic search program by a factor of 5 to 10.read more
Citations
More filters
Journal ArticleDOI
Fast Pattern Matching in Strings
TL;DR: An algorithm is presented which finds all occurrences of one given string within another, in running time proportional to the sum of the lengths of the strings, showing that the set of concatenations of even palindromes, i.e., the language $\{\alpha \alpha ^R\}^*$, can be recognized in linear time.
Journal ArticleDOI
A guided tour to approximate string matching
TL;DR: This work surveys the current techniques to cope with the problem of string matching that allows errors, and focuses on online searching and mostly on edit distance, explaining the problem and its relevance, its statistical behavior, its history and current developments, and the central ideas of the algorithms.
Journal ArticleDOI
A fast string searching algorithm
TL;DR: The algorithm has the unusual property that, in most cases, not all of the first i .” in another string, are inspected.
Book
Information Retrieval: Data Structures and Algorithms
TL;DR: For programmers and students interested in parsing text, automated indexing, its the first collection in book form of the basic data structures and algorithms that are critical to the storage and retrieval of documents.
Journal ArticleDOI
Automated generation of heuristics for biological sequence comparison
Guy Slater,Ewan Birney +1 more
TL;DR: B bounded sparse dynamic programming (BSDP) is introduced to allow rapid implementation of heuristics approximating to many complex alignment models, and has been incorporated into the freely available sequence alignment program, exonerate.
References
More filters
Book
The Design and Analysis of Computer Algorithms
Alfred V. Aho,John E. Hopcroft +1 more
TL;DR: This text introduces the basic data structures and programming techniques often used in efficient algorithms, and covers use of lists, push-down stacks, queues, trees, and graphs.
Journal ArticleDOI
Fast Pattern Matching in Strings
TL;DR: An algorithm is presented which finds all occurrences of one given string within another, in running time proportional to the sum of the lengths of the strings, showing that the set of concatenations of even palindromes, i.e., the language $\{\alpha \alpha ^R\}^*$, can be recognized in linear time.
Journal ArticleDOI
Finite automata and their decision problems
Michael O. Rabin,Dana Scott +1 more
TL;DR: Finite automata are considered as instruments for classifying finite tapes as well as generalizations of the notion of an automaton are introduced and their relation to the classical automata is determined.
Book ChapterDOI
Representation of Events in Nerve Nets and Finite Automata
TL;DR: This memorandum is devoted to an elementary exposition of the problems and of results obtained on the McCulloch-Pitts nerve net during investigations in August 1951.
Book
Sorting and Searching
TL;DR: The first revision of this third volume is a survey of classical computer techniques for sorting and searching that extends the treatment of data structures to consider both large and small databases and internal and external memories.