Fast algorithms for finding nearest common ancestors
SIAM Journal on Computing
Efficient suffix trees on secondary storage
Proceedings of the seventh annual ACM-SIAM symposium on Discrete algorithms
Parallel preprocessing for path queries without concurrent reading
Information and Computation
Succinct Representation of Balanced Parentheses and Static Trees
SIAM Journal on Computing
An O(nlog n) Algorithm for the Maximum Agreement Subtree Problem for Binary Trees
SIAM Journal on Computing
High-order entropy-compressed text indexes
SODA '03 Proceedings of the fourteenth annual ACM-SIAM symposium on Discrete algorithms
Representing Trees of Higher Degree
Algorithmica
Range mode and range median queries on lists and trees
Nordic Journal of Computing
Ultra-succinct representation of ordered trees
SODA '07 Proceedings of the eighteenth annual ACM-SIAM symposium on Discrete algorithms
Balanced parentheses strike back
ACM Transactions on Algorithms (TALG)
Space-efficient static trees and graphs
SFCS '89 Proceedings of the 30th Annual Symposium on Foundations of Computer Science
Range Quantile Queries: Another Virtue of Wavelet Trees
SPIRE '09 Proceedings of the 16th International Symposium on String Processing and Information Retrieval
Position-Restricted substring searching
LATIN'06 Proceedings of the 7th Latin American conference on Theoretical Informatics
Path queries in weighted trees
ISAAC'11 Proceedings of the 22nd international conference on Algorithms and Computation
Succinct data structures for path queries
ESA'12 Proceedings of the 20th Annual European conference on Algorithms
Hi-index | 0.00 |
We consider the problem of succinctly representing a given vertex-weighted tree of n vertices, whose vertices are labeled by integer weights from {1,2,...,@s} and supporting the following path queries efficiently:*Path median query: Given two vertices i, j, return the median weight on the path from i to j. *Path selection query: Given two vertices i, j and a positive integer k, return the kth smallest weight on the path from i to j. *Path counting/reporting query: Given two vertices i, j and a range [a,b], count/report the vertices on the path from i to j whose weights are in this range. The previous best data structure supporting these queries takes O(nlogn) bits space and can perform path median/selection/counting in O(log@s) time and path reporting in O(log@s+occlog@s) time, where occ represents the number of outputs [M. He, J.I. Munro, G. Zhou, Path queries in weighted trees, in: International Symposium on Algorithms and Computation, 2011, pp. 140-149]. We present a succinct data structure taking nlog@s+6n+o(nlog@s) bits space that can perform the above mentioned queries in O(log@slogn) and O(log@slogn+occlog@s) time respectively.