Computing the Burrows-Wheeler transform in place and in small space

被引:9
|
作者
Crochemore, Maxime [1 ]
Grossi, Roberto [2 ]
Karkkainen, Juha [3 ]
Landau, Gad M. [4 ,5 ]
机构
[1] Kings Coll London, London WC2R 2LS, England
[2] Univ Pisa, Dipartimento Informat, I-56100 Pisa, Italy
[3] Univ Helsinki, Dept Comp Sci, FIN-00014 Helsinki, Finland
[4] Univ Haifa, Dept Comp Sci, IL-31999 Haifa, Israel
[5] NYU Poly, Dept Comp Sci & Engn, Brooklyn, NY USA
基金
美国国家科学基金会; 以色列科学基金会; 芬兰科学院;
关键词
Burrows-Wheeler transform; In-place algorithms; String algorithms; Suffix sorting;
D O I
10.1016/j.jda.2015.01.004
中图分类号
O29 [应用数学];
学科分类号
070104 ;
摘要
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(n(2)) 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.sigma(k)) extra memory cells are allowed with sigma(k) distinct characters, providing an O((n(2)/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 c > 0, the BWT of a text of n bytes can be computed in O(n epsilon(-1) log n) time using just epsilon n extra bytes. (C) 2015 Elsevier B.V. All rights reserved.
引用
收藏
页码:44 / 52
页数:9
相关论文
共 50 条
  • [1] An analysis of the Burrows-Wheeler Transform
    Manzini, G
    JOURNAL OF THE ACM, 2001, 48 (03) : 407 - 430
  • [2] Burrows-Wheeler transform for terabases
    Siren, Jouni
    2016 DATA COMPRESSION CONFERENCE (DCC), 2016, : 211 - 220
  • [3] Dynamic Burrows-Wheeler Transform
    Salson, Mikael
    Lecroq, Thierry
    Leonard, Martine
    Mouchard, Laurent
    PROCEEDINGS OF THE PRAGUE STRINGOLOGY CONFERENCE 2008, 2008, : 13 - 25
  • [4] Inverting the Burrows-Wheeler Transform
    Bird, RS
    Mu, SC
    JOURNAL OF FUNCTIONAL PROGRAMMING, 2004, 14 : 603 - 612
  • [5] An extension of the Burrows-Wheeler transform
    Mantaci, S.
    Restivo, A.
    Rosone, G.
    Sciortino, M.
    THEORETICAL COMPUTER SCIENCE, 2007, 387 (03) : 298 - 312
  • [6] Space-Efficient Construction of the Burrows-Wheeler Transform
    Beller, Timo
    Zwerger, Maike
    Gog, Simon
    Ohlebusch, Enno
    STRING PROCESSING AND INFORMATION RETRIEVAL (SPIRE 2013), 2013, 8214 : 5 - 16
  • [7] An analysis of the Burrows-Wheeler Transform
    Manzini, G
    PROCEEDINGS OF THE TENTH ANNUAL ACM-SIAM SYMPOSIUM ON DISCRETE ALGORITHMS, 1999, : 669 - 677
  • [8] Space-Efficient Computation of the Burrows-Wheeler Transform
    Fuentes-Sepulveda, Jose
    Navarro, Gonzalo
    Nekrich, Yakov
    2019 DATA COMPRESSION CONFERENCE (DCC), 2019, : 132 - 141
  • [9] A High Performance Architecture for Computing Burrows-Wheeler Transform on FPGAs
    Cheema, Umer I.
    Khokhar, Ashfaq A.
    2013 INTERNATIONAL CONFERENCE ON RECONFIGURABLE COMPUTING AND FPGAS (RECONFIG), 2013,
  • [10] Computing the Burrows-Wheeler transform of a string and its reverse in parallel
    Ohlebusch, Enno
    Beller, Timo
    Abouelhoda, Mohamed I.
    JOURNAL OF DISCRETE ALGORITHMS, 2014, 25 : 21 - 33