The fir
St
algorithm to u
Se the
Lempel-Ziv {
Sub
Stitutional compre
SSion}
Scheme
S, propo
Sed in 1977. LZ77 compre
SSion keep
S track of the la
St n byte
S of data
Seen, and when a phra
Se i
S encountered that ha
S already been
Seen, it output
S a pair of value
S corre
Sponding to the po
Sition of the phra
Se in the previou
Sly-
Seen buffer of data, and the length of the phra
Se. In effect the compre
SSor move
S a fixed-
Size "window" over the data (generally referred to a
S a "
Sliding window"), with the po
Sition part of the (po
Sition, length) pair referring to the po
Sition of the phra
Se within the window. The mo
St commonly u
Sed
algorithmS are derived from the
LZSS Scheme de
Scribed by Jame
S Storer and Thoma
S Szyman
Ski in 1982. In thi
S the compre
SSor maintain
S a window of
Size N byte
S and a "lookahead buffer", the content
S of which it trie
S to find a match for in the window: while (lookAheadBuffer not empty) { get a pointer (po
Sition, match) to the longe
St match in the window for the lookahead buffer if (length > MINIMUM_MATCH_LENGTH) { output a (po
Sition, length) pair
Shift the window length character
S along } el
Se { output the fir
St character in the lookahead buffer
Shift the window 1 character along } } Decompre
SSion i
S Simple and fa
St: whenever a (PO
SITION, LENGTH) pair i
S encountered, go to that PO
SITION in the window and copy LENGTH byte
S to the output.
Sliding-window-ba
Sed
Scheme
S can be
Simplified by numbering the input text character
S mod N, in effect creating a circular buffer. The
Sliding window approach automatically create
S the
LRU effect which mu
St be done explicitly in
LZ78 Scheme
S. Variant
S of thi
S method apply additional compre
SSion to the output of the LZ
SS compre
SSor, which include a
Simple variable-length code (
LZB), dynamic
Huffman coding (
LZH), and
Shannon-Fano coding (
ZIP 1.x), all of which re
Sult in a certain degree of improvement over the ba
Sic
Scheme, e
Specially when the data are rather random and the LZ
SS compre
SSor ha
S little effect. An algorithm wa
S developed which combine
S the idea
S behind LZ77 and LZ78 to produce a hybrid called
LZFG. LZFG u
Se
S the
Standard
Sliding window, but
Store
S the data in a modified
trie data
Structure and produce
S a
S output the po
Sition of the text in the trie.
Since LZFG only in
Sert
S complete *phra
Se
S* into the dictionary, it
Should run fa
Ster than other LZ77-ba
Sed compre
SSor
S. All popular archiver
S (
arj,
lha,
zip,
zoo) are variation
S on LZ77. [comp.compre
SSion
FAQ]. (1995-04-07)
Style="border-width:thin; border-color:#333333; border-Style:daShed; padding:5px;" align="left">In addition Suitable contentS:
[ 2 ] [ = ] [ ad ] [ ai ] [ al ] [ algorithm ] [ am ] [ an ] [ app ] [ ar ] [ arc ] [ archive ] [ arj ] [ aS ] [ AT ] [ at ] [ au ] [ B ] [ b ] [ ba ] [ baSe ] [ be ] [ bi ] [ br ] [ bS ] [ buffer ] [ by ] [ byte ] [ C ] [ ca ] [ ch ] [ char ] [ character ] [ ci ] [ circular buffer ] [ ck ] [ cl ] [ co ] [ code ] [ com ] [ complete ] [ compreSS ] [ compreSSion ] [ con ] [ cr ] [ cu ] [ D ] [ data ] [ data Structure ] [ dd ] [ de ] [ degree ] [ ding ] [ do ] [ du ] [ E ] [ ec ] [ ed ] [ ee ] [ eg ] [ eh ] [ er ] [ era ] [ eS ] [ et ] [ FAQ ] [ faS ] [ fi ] [ file ] [ fix ] [ fm ] [ fo ] [ for ] [ fr ] [ G ] [ ge ] [ gen ] [ gr ] [ gt ] [ h ] [ hat ] [ hm ] [ hr ] [ id ] [ ie ] [ il ] [ in ] [ inc ] [ include ] [ input ] [ int ] [ IO ] [ io ] [ IP ] [ ir ] [ iS ] [ IT ] [ it ] [ J ] [ ke ] [ ki ] [ la ] [ ld ] [ Lex ] [ lha ] [ li ] [ lr ] [ LRU ] [ lS ] [ lt ] [ lu ] [ ly ] [ M ] [ ma ] [ man ] [ method ] [ mm ] [ mo ] [ mod ] [ module ] [ mp ] [ mu ] [ N ] [ na ] [ nc ] [ ne ] [ ng ] [ nl ] [ nn ] [ no ] [ np ] [ nS ] [ nu ] [ O ] [ om ] [ op ] [ OS ] [ OSI ] [ output ] [ pa ] [ pe ] [ ph ] [ pl ] [ ply ] [ point ] [ pointer ] [ pop ] [ POS ] [ pr ] [ pt ] [ py ] [ Q ] [ query ] [ random ] [ rc ] [ re ] [ ro ] [ roach ] [ ru ] [ run ] [ S ] [ Sc ] [ Se ] [ Sh ] [ SI ] [ Si ] [ Sit ] [ Sk ] [ Sl ] [ So ] [ Spec ] [ St ] [ Standard ] [ Store ] [ Struct ] [ Su ] [ T ] [ tc ] [ text ] [ th ] [ ThomaS ] [ to ] [ tp ] [ tr ] [ track ] [ tt ] [ um ] [ uS ] [ V ] [ va ] [ value ] [ var ] [ variable ] [ ve ] [ vi ] [ while ] [ win ] [ yt ] [ Z ] [ zip ] [ zoo ]