The Burrows-Wheeler transform rearranges the characters of a string into runs of similar characters by forming every cyclic rotation of the string, sorting those rotations lexicographically, and taking the last column of the resulting sorted arrangement as the transformed output, a process that is reversible given the original string's position among the sorted rotations. Because the transform tends to group identical or similar characters together, the transformed output typically compresses far better with simple techniques such as run-length encoding than the original string does. Michael Burrows and David Wheeler described the transform in a 1994 technical report, and it underlies the bzip2 compression program and file-indexing structures such as the FM-index used in DNA sequence alignment tools.
Facts
Time ComplexityLinear time when implemented with a suffix array 1 Credited ToDavid Wheeler (invented 1983); Michael Burrows and David Wheeler (published 1994) 1 Sources
1. Burrows-Wheeler transform, Wikipedia
Introduction, sentence on efficient implementation
The algorithm can be implemented efficiently using a suffix array thus reaching linear time complexity.
Introduction, sentence on invention and publication
It was invented by David Wheeler in 1983, and later published by him and Michael Burrows in 1994.
View the SourceReader Challenges (0)
No disputes yet. Spotted an error or a better source? Open the first one.
Sign in to dispute this or suggest a correction.