Title :
On the Use of Suffix Arrays for Memory-Efficient Lempel-Ziv Data Compression
Author :
Ferreira, Artur ; Oliveira, Arlindo ; Figueiredo, Mário
Author_Institution :
Inst. Super. de Eng. de Lisboa, Lisbon
Abstract :
The Lempel-Ziv 77 (LZ77) and LZ-Storer-Szymanski (LZSS) text compression algorithms use a sliding window over the sequence of symbols, with two sub-windows: the dictionary (symbols already encoded) and the look-ahead-buffer (LAB) (symbols not yet encoded). Binary search trees and suffix trees (ST) have been used to speedup the search of the LAB over the dictionary, at the expense of high memory usage [1]. A suffix array (SA) is a simpler, more compact data structure which uses (much) less memory [2,3] to hold the same information. The SA for a length m string is an array of integers ([1], ...[k], ...a[m]) that stores the lexicographic order of suffix k of the string; sub-string searching, as used in LZ77/LZSS, is done by searching the SA.
Keywords :
data compression; dictionaries; text analysis; trees (mathematics); LZ-Storer-Szymanski text compression; Lempel-Ziv 77 text compression; binary search trees; memory-efficient Lempel-Ziv data compression; suffix arrays; suffix trees; Binary search trees; Compression algorithms; Computer science; Data compression; Data structures; Dictionaries; Embedded system; Encoding; Telecommunications; Information Retrieval; Lempel-Ziv Compression; Sub-string Search; Suffix Arrays; Suffix Trees;
Conference_Titel :
Data Compression Conference, 2009. DCC '09.
Conference_Location :
Snowbird, UT
Print_ISBN :
978-1-4244-3753-5
DOI :
10.1109/DCC.2009.50