Abstract

We present a new space- and time-efficient algorithm for computing the Burrow–Wheeler transform (BWT). For any choice of a parameter v ∈ [ 3 , n 2 / 3 ] , the computation of BWT for a text of length n takes O ( n log n + v n ) worst-case time and O ( n log n + v n ) average-case time using O ( n log n / v ) bits of space in addition to the text and the BWT. For example, if v = log 2 n , the time is O ( n log 2 n ) in the worst case and O ( n log n ) on an average with the additional space requirement of O ( n ) bits. The algorithm is alphabet-independent: it uses only character comparisons, and the complexities do not depend on the alphabet size unless v does. A practical implementation is 2–3 times slower than one of the fastest and most space-efficient previous algorithms while needing only one-third of the main memory. The algorithm is based on suffix arrays, but unlike any other algorithm, it can construct the suffix array a small block at a time without storing the rest of the suffix array anywhere.

Full Text
Paper version not known

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call

Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.