A space and time efficient algorithm for constructing compressed suffix arrays

被引:38
|
作者
Hon, Wing-Kai [1 ]
Lam, Tak-Wah
Sadakane, Kunihiko
Sung, Wing-Kin
Yiu, Siu-Ming
机构
[1] Univ Hong Kong, Dept Comp Sci, Hong Kong, Hong Kong, Peoples R China
[2] Kyushu Univ, Dept Comp Sci & Commun Engn, Fukuoka 812, Japan
[3] Natl Univ Singapore, Sch Comp, Singapore 117548, Singapore
关键词
text indexing; pattern matching; compression; construction;
D O I
10.1007/s00453-006-1228-8
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
With the first human DNA being decoded into a sequence of about 2.8 billion characters, much biological research has been centered on analyzing this sequence. Theoretically speaking, it is now feasible to accommodate an index for human DNA in the main memory so that any pattern can be located efficiently. This is due to the recent breakthrough on compressed suffix arrays, which reduces the space requirement from O (n log n) bits to O (n) bits. However, Constructing compressed suffix arrays is still not an easy task because we still have to compute suffix arrays first and need a working memory of O (n log it) bits (i.e., more than 13 gigabytes for human DNA). This paper initiates the study of constructing compressed suffix arrays directly from the text. The main contribution is a construction algorithm that uses only O (n) bits of working memory, and the time complexity is O (n log n). Our construction algorithm is also time and space efficient for texts with large alphabets such as Chinese or Japanese. Precisely, when the alphabet size is vertical bar Sigma vertical bar, the working space is O (n log vertical bar Sigma vertical bar) bits, and the time complexity remains O (n log n), which is independent of vertical bar Sigma vertical bar.
引用
收藏
页码:23 / 36
页数:14
相关论文
共 50 条
  • [41] Time/space efficient compressed pattern matching
    Gasieniec, L
    Potapov, I
    FUNDAMENTA INFORMATICAE, 2003, 56 (1-2) : 137 - 154
  • [42] Succinct representations of lcp information and improvements in the compressed suffix arrays
    Sadakane, K
    PROCEEDINGS OF THE THIRTEENTH ANNUAL ACM-SIAM SYMPOSIUM ON DISCRETE ALGORITHMS, 2002, : 225 - 232
  • [43] An Efficient Algorithm for Suffix Sorting
    Peng, Zhan
    Wang, Yuping
    Xue, Xingsi
    Wei, Jingxuan
    INTERNATIONAL JOURNAL OF PATTERN RECOGNITION AND ARTIFICIAL INTELLIGENCE, 2016, 30 (06)
  • [44] Linearized Suffix Tree: an Efficient Index Data Structure with the Capabilities of Suffix Trees and Suffix Arrays
    Kim, Dong Kyue
    Kim, Minhwan
    Park, Heejin
    ALGORITHMICA, 2008, 52 (03) : 350 - 377
  • [45] Linearized Suffix Tree: an Efficient Index Data Structure with the Capabilities of Suffix Trees and Suffix Arrays
    Dong Kyue Kim
    Minhwan Kim
    Heejin Park
    Algorithmica, 2008, 52 : 350 - 377
  • [46] Alphabet-independent linear-time construction of compressed suffix arrays using o(n log n)-bit working space
    Na, Joong Chae
    Park, Kunsoo
    THEORETICAL COMPUTER SCIENCE, 2007, 385 (1-3) : 127 - 136
  • [47] CONSTRUCTING SUFFIX TREES ON LINE IN LINEAR TIME
    UKKONEN, E
    IFIP TRANSACTIONS A-COMPUTER SCIENCE AND TECHNOLOGY, 1992, 12 : 484 - 492
  • [48] Suffix vector: A space-efficient suffix tree representation
    Monostori, K
    Zaslavsky, A
    Vajk, I
    ALGORITHMS AND COMPUTATION, PROCEEDINGS, 2001, 2223 : 707 - 718
  • [49] Compressed text databases with efficient query algorithms based on the compressed suffix array
    Sadakane, K
    ALGORITHM AND COMPUTATION, PROCEEDINGS, 2001, 1969 : 410 - 421
  • [50] Broadword Computing and Fibonacci Code Speed Up Compressed Suffix Arrays
    Gog, Simon
    EXPERIMENTAL ALGORITHMS, PROCEEDINGS, 2009, 5526 : 161 - 172