A data structure for dynamic trees
Journal of Computer and System Sciences
SFCS '91 Proceedings of the 32nd annual symposium on Foundations of computer science
A Space-Economical Suffix Tree Construction Algorithm
Journal of the ACM (JACM)
A fast string searching algorithm
Communications of the ACM
Efficient string matching: an aid to bibliographic search
Communications of the ACM
Mathematical Methods for DNA Sequences
Mathematical Methods for DNA Sequences
A String Matching Algorithm Fast on the Average
Proceedings of the 6th Colloquium, on Automata, Languages and Programming
Linear pattern matching algorithms
SWAT '73 Proceedings of the 14th Annual Symposium on Switching and Automata Theory (swat 1973)
A fully-dynamic data structure for external substring search
STOC '95 Proceedings of the twenty-seventh annual ACM symposium on Theory of computing
The string B-tree: a new data structure for string search in external memory and its applications
Journal of the ACM (JACM)
Proceedings of the sixth annual ACM-SIAM symposium on Discrete algorithms
An efficient algorithm for dynamic text indexing
SODA '94 Proceedings of the fifth annual ACM-SIAM symposium on Discrete algorithms
Indexing and Dictionary Matching with One Error
WADS '99 Proceedings of the 6th International Workshop on Algorithms and Data Structures
A Fast Algorithm for Discovering Optimal String Patterns in Large Text Databases
ALT '98 Proceedings of the 9th International Conference on Algorithmic Learning Theory
DS '02 Proceedings of the 5th International Conference on Discovery Science
Dictionary matching and indexing with errors and don't cares
STOC '04 Proceedings of the thirty-sixth annual ACM symposium on Theory of computing
Efficient algorithms for the scaled indexing problem
Journal of Algorithms
Dynamic dictionary matching and compressed suffix trees
SODA '05 Proceedings of the sixteenth annual ACM-SIAM symposium on Discrete algorithms
Compressed indexes for dynamic text collections
ACM Transactions on Algorithms (TALG)
Dynamic dictionary matching using inverted lists
ACST'07 Proceedings of the third conference on IASTED International Conference: Advances in Computer Science and Technology
DMP-tree: A dynamic M-way prefix tree data structure for strings matching
Computers and Electrical Engineering
Hi-index | 0.00 |
We consider the dynamic dictionary matching problem. We are given a set of pattern strings (the dictionary) that can change over time; that is, we can insert a new pattern into the dictionary or delete a pattern from it. Moreover, given a text string, we must be able to find all occurrences of any pattern of the dictionary in the text. Let D"0 be the empty dictionary. We present an algorithm that performs any sequence of the following operations in the given time bounds: (1) insert(p, D"i"-"1). Insert pattern p[1, m] into the dictionary D"i"-"1. D"i is the dictionary after the operation. The time complexity is O(m log |D"i|). (2) delete(p, D"i"-"1). Delete pattern p[1, m] from the dictionary D"i"-"1. D"i is the dictionary after the operation. The time complexity is O(m log |D"i"-"1|). (3) search(t, D"i). Search text t[1, n] for all occurrences of the patterns of dictionary D"i. The time complexity is O((n + tocc) log |D"i|), where tocc is the total number of occurences of patterns in the text.