Text compression
Suffix arrays: a new method for on-line string searches
SIAM Journal on Computing
Universal Data Compression Based on the Burrows-Wheeler Transformation: Theory and Practice
IEEE Transactions on Computers
An analysis of the Burrows—Wheeler transform
Journal of the ACM (JACM)
Algorithms and Theory of Computation Handbook
Algorithms and Theory of Computation Handbook
Generalization of the BWT Transformation and Inversion Ranks
DCC '02 Proceedings of the Data Compression Conference
Space-Time Tradeoffs in the Inverse B-W Transform
DCC '01 Proceedings of the Data Compression Conference
Compression boosting in optimal linear time using the Burrows-Wheeler Transform
SODA '04 Proceedings of the fifteenth annual ACM-SIAM symposium on Discrete algorithms
Medium-space algorithms for inverse BWT
ESA'10 Proceedings of the 18th annual European conference on Algorithms: Part I
Revisiting bounded context block-sorting transformations
Software—Practice & Experience
Hi-index | 0.00 |
The Burrows-Wheeler transformation is used for effective data compression, e.g., in the well known program bzip2. Compression and decompression are done in a block-wise fashion; larger blocks usually result in better compression rates. With the currently used algorithms for decompression, 4n bytes of auxiliary memory for processing a block of n bytes are needed, 0 n 32. This may pose a problem in embedded systems (e.g., mobile phones), where RAM is a scarce resource. In this paper we present algorithms that reduce the memory need without sacrificing speed too much. The main results are: Assuming an input string of n characters, 0 n 32, the reverse Burrows-Wheeler transformation can be done with 1.625 n bytes of auxiliary memory and O(n) runtime, using just a few operations per input character. Alternatively, we can use n/t bytes and 256 tn operations. The theoretical results are backed up by experimental data showing the space-time tradeoff.