An Efficient Index Data Structure with the Capabilities of Suffix Trees and Suffix Arrays for Alphabets of Non-negligible Size
An Efficient Index Data Structure with the Capabilities of Suffix Trees and Suffix Arrays for Alphabets of Non-negligible Size
复制标题
一种具有后缀树和后缀数组功能的高效索引数据结构,适用于不可忽略大小的字母表
DOI:
10.1007/978-3-540-30213-1_22
复制
发表时间:
2004
期刊:
影响因子:
--
通讯作者:
Heejin Park
中科院分区:
文献类型:
--
作者:
Dong Kyue Kim;Jeong;Heejin Park
The suffix tree and the suffix array are fundamental full-text index data structures and many algorithms have been developed on them to solve problems occurring in string processing and information retrieval. Some problems are solved more efficiently using the suffix tree and others are solved more efficiently using the suffix array. We consider the index data structure with the capabilities of both the suffix tree and the suffix array without requiring much space. For the alphabets whose size is negligible, Abouelhoda et al. developed the enhance suffix array for this purpose. It consists of the suffix array and the child table. The child table stores the parent-child relationship between the nodes in the suffix tree so that every algorithm developed on the suffix tree can be run with a small and systematic modification. Since the child table consumes moderate space and is constructed very fast, the enhanced suffix array is almost as time/space-efficient as the suffix array. However, when the size of the alphabet is not negligible, the enhance suffix array loses the capabilities of the suffix tree. The pattern search in the enhanced suffix array takesO(m∣Σ∣) time wheremis the length of the pattern and Σ is the alphabet, while the pattern search in the suffix tree takesO(mlog∣Σ∣) time.In this paper, we improve the enhanced suffix array to have the capabilities of the suffix tree and the suffix array even when the size of the alphabet is not negligible. We do this by presenting a new child table, which improves the enhanced suffix array to support the pattern search inO(mlog∣Σ∣) time. Our index data structure is almost as time/space-efficient as the enhanced suffix array. It consumes the same space as the enhanced suffix array and its construction time is slightly slower (< 4%) than that of the enhanced suffix array. In a different point of view, it can be considered the first practical one facilitating the capabilities of suffix trees when the size of the alphabet is not negligible because the suffix tree supportingO(mlog∣Σ∣)-time pattern search is not easy to implement and thus it is rarely used in practice.
影响因子:
2.5
作者:
MCCREIGHT, EM
通讯作者:
MCCREIGHT, EM