This article is
- freely available
Suffix-Sorting via Shannon-Fano-Elias Codes
Lane Department of Computer Science and Electrical Engineering, West Virginia University, Morgantown, WV 26506-6109, USA
* Author to whom correspondence should be addressed.
Received: 23 December 2009; in revised form: 18 March 2010 / Accepted: 18 March 2010 / Published: 1 April 2010
Abstract: Given a sequence T = t0t1 . . . tn-1 of size n = |T|, with symbols from a fixed alphabet Σ, (|Σ| ≤ n), the suffix array provides a listing of all the suffixes of T in a lexicographic order. Given T, the suffix sorting problem is to construct its suffix array. The direct suffix sorting problem is to construct the suffix array of T directly without using the suffix tree data structure. While algorithims for linear time, linear space direct suffix sorting have been proposed, the actual constant in the linear space is still a major concern, given that the applications of suffix trees and suffix arrays (such as in whole-genome analysis) often involve huge data sets. In this work, we reduce the gap between current results and the minimal space requirement. We introduce an algorithm for the direct suffix sorting problem with worst case time complexity in O(n), requiring only (1 2/3 n log n ¡ n log |Σ| + O(1)) bits in memory space. This implies 5 2/3 n+O(1) bytes for total space requirment, (including space for both the output suffix array and the input sequence T) assuming n ≤ 232, |Σ| ≤ 256, and 4 bytes per integer. The basis of our algorithm is an extension of Shannon-Fano-Elias codes used in source coding and information theory. This is the first time information-theoretic methods have been used as the basis for solving the suffix sorting problem.
Keywords: suffix sorting; suffix arrays; suffix tree; Shannon-Fano-Elias codes; source coding
Article StatisticsClick here to load and display the download statistics.
Notes: Multiple requests from the same IP address are counted as one view.
Cite This Article
MDPI and ACS Style
Adjeroh, D.; Nan, F. Suffix-Sorting via Shannon-Fano-Elias Codes. Algorithms 2010, 3, 145-167.
Adjeroh D, Nan F. Suffix-Sorting via Shannon-Fano-Elias Codes. Algorithms. 2010; 3(2):145-167.
Adjeroh, Donald; Nan, Fei. 2010. "Suffix-Sorting via Shannon-Fano-Elias Codes." Algorithms 3, no. 2: 145-167.