2007 | OriginalPaper | Chapter
On Demand String Sorting over Unbounded Alphabets
Authors : Carmel Kent, Moshe Lewenstein, Dafna Sheinwald
Published in: Combinatorial Pattern Matching
Publisher: Springer Berlin Heidelberg
Activate our intelligent search to find suitable subject content or patents.
Select sections of text to find matching patents with Artificial Intelligence. powered by
Select sections of text to find additional relevant content using AI-assisted search. powered by
On-demand string sorting is the problem of preprocessing a set of
n
strings to allow subsequent queries of finding the
k
<
n
lexicographically smallest strings (and afterwards the next
k
etc.) This on-demand variant strongly resembles the search engine queries which give you the best
k
-ranked pages recurringly.
We present a data structure that supports this in
O
(
n
) preprocessing time, and answers queries in
O
(log
n
) time. There is also a cost of
O
(
N
) time amortized over all operations, where
N
is the total length of the strings.
Our data structure is a heap of strings, which supports heapify and delete-mins. As it turns out, implementing a full heap with all operations is not that simple. For the sake of completeness we propose a heap with full operations based on balanced indexing trees that supports the heap operations in optimal times.