# Computing the Burrows–Wheeler transform in place and in small space

Abstract : We introduce the problem of computing the Burrows–Wheeler Transform (BWT) using small additional space. Our in-place algorithm does not need the explicit storage for the suffix sort array and the output array, as typically required in previous work. It relies on the combinatorial properties of the BWT, and runs in $O(n2)$ time in the comparison model using $O(1)$ extra memory cells, apart from the array of n cells storing the n characters of the input text. We then discuss the time–space trade-off when $O(k⋅σk)$ extra memory cells are allowed with σk distinct characters, providing an $O((n2/k+n)log⁡k)$-time algorithm to obtain (and invert) the BWT. For example in real systems where the alphabet size is a constant, for any arbitrarily small $ϵ>0$, the BWT of a text of n bytes can be computed in $O(nϵ−1log⁡n)$ time using just ϵn extra bytes.
Document type :
Journal articles

Cited literature [28 references]

https://hal.inria.fr/hal-01248855
Contributor : Marie-France Sagot <>
Submitted on : Thursday, June 29, 2017 - 12:22:30 PM
Last modification on : Wednesday, August 14, 2019 - 10:46:02 AM
Long-term archiving on : Thursday, January 18, 2018 - 3:27:56 AM

### File

crochemore2015.pdf
Files produced by the author(s)

### Citation

Maxime Crochemore, Roberto Grossi, Juha Kärkkäinen, Gad M. Landau. Computing the Burrows–Wheeler transform in place and in small space. Journal of Discrete Algorithms, Elsevier, 2015, 32, pp.44-52. ⟨10.1016/j.jda.2015.01.004⟩. ⟨hal-01248855⟩

Record views