Introduction to algorithms
The string B-tree: a new data structure for string search in external memory and its applications
Journal of the ACM (JACM)
External memory algorithms and data structures: dealing with massive data
ACM Computing Surveys (CSUR)
FOCS '99 Proceedings of the 40th Annual Symposium on Foundations of Computer Science
Cache-oblivious string dictionaries
SODA '06 Proceedings of the seventeenth annual ACM-SIAM symposium on Discrete algorithm
Cache-oblivious string B-trees
Proceedings of the twenty-fifth ACM SIGMOD-SIGACT-SIGART symposium on Principles of database systems
On searching compressed string collections cache-obliviously
Proceedings of the twenty-seventh ACM SIGMOD-SIGACT-SIGART symposium on Principles of database systems
Toward a Science of Power Management
Computer
Data structures: time, I/Os, entropy, joules!
ESA'10 Proceedings of the 18th annual European conference on Algorithms: Part II
Fast prefix search in little space, with applications
ESA'10 Proceedings of the 18th annual European conference on Algorithms: Part I
Obtaining provably good performance from suffix trees in secondary storage
CPM'06 Proceedings of the 17th Annual conference on Combinatorial Pattern Matching
Hi-index | 5.23 |
The weak-prefix search problem consists of searching for the strings in a dictionary S that are prefixed by a pattern P[1,p]; if no such string does occur, any answer can be returned. Strings in S have average length @?, are n in number, and are given in advance to be preprocessed, whereas the pattern P is provided on-line. In this paper we solve this problem in the external-memory and in the cache-oblivious models by using the optimal O(nlog@?) bits of space and requiring O(p/B+log"Bn) I/Os. The searching algorithm is of Monte Carlo type, so its answer is correct with high probability. We also discuss some variants of the problem concerning with a distribution over the queried patterns, a deterministic solution, and foresee applications in the design of energy-efficient data structures.