The suffix binary search tree and suffix AVL tree

Irving, R. and Love, L. (2000) The suffix binary search tree and suffix AVL tree. Journal of Discrete Algorithms, pp. 387-408.

Full text not currently available from Enlighten.


Suffix trees and suffix arrays are classical data structures that are used to represent the set of suffixes of a given string, and thereby facilitate the efficient solution of various string processing problems --- in particular online string searching. Here we investigate the potential of suitably adapted binary search trees as competitors in this context. The suffix binary search tree (SBST) and its balanced counterpart, the suffix AVL-tree, are conceptually simple, relatively easy to implement, and offer time and space efficiency to rival suffix trees and suffix arrays, with distinct advantages in some circumstances --- for instance in cases where only a subset of the suffixes need be represented. Construction of a suffix BST can be achieved in O(L) time, where L is the path length of the tree, and in the case of a suffix AVL-tree this is O(n log n), where n is the length of the input string. Searching for an m- long substring requires O(m + l) time, where l is the length of the search path. In the suffix AVL-tree this is O(m + log n) in the worst case. The space requirements are linear in n, generally intermediate between those for a suffix tree and a suffix array. Empirical evidence, illustrating the competitiveness of suffix BSTs, is presented.

Item Type:Articles
Glasgow Author(s) Enlighten ID:Irving, Dr Robert and Love, Dr Lorna
Authors: Irving, R., and Love, L.
College/School:College of Science and Engineering > School of Computing Science
Journal Name:Journal of Discrete Algorithms
ISSN (Online):1570-8675

University Staff: Request a correction | Enlighten Editors: Update this record