hip.txt
来自「My (so called) HiP compression algorithm」· 文本 代码 · 共 64 行
TXT
64 行
------------------------------------------------------------------
HiP - A single file compressor
------------------------------------------------------------------
by yoda
version: beta 1
coder: yoda
project start: 16th September 2k2
coding language: C++
compiler: VS7
E-mail: LordPE@gmx.net
website: y0da.cjb.net
Prolog
~~~~~~
In the last time I tryed to create an own compression algorithm. So
here's my HiP compression algorithm as console mode utility.
The algorithm is a hybrid of Lempel-Ziv 77 and Huffman encoding (Huffman
+ LZ77 ZIP = HiP).
I don't know what I'll do with this nice peace of code. Maybe I'll
code an archiver or a compression library, when it's better on time.
Who knows?
behind the lines
~~~~~~~~~~~~~~~~
The HiP compression algorithm includes up to now the following features:
- LZ77 style string referencing with lazy evolution mechanism
- implicit RLE (Run-Length-Encoding)
- literal encoding via adaptive Huffman table
- non-bruteforce string comparison
Command line
~~~~~~~~~~~~
HiP.exe (/[compress[X]/decompress]) (infile) (outfile)
X - compression level (1..6)
History
~~~~~~~
beta 1 - 20th October 2k2:
- much literals in a row are encoded as literal block
- corrected silly bug that made occur errors if the output
had been bigger than the input (e.g. archives)
- now using adaptive Huffman model
- killed embarrassing problem of worse compress ratio in
bigger levels by ripping the highest 3, now 1..6
- compression process can now be cancel via ESC
alpha 3 - 14th October 2k2:
- serveral slight improvements
- hash search algorithm's performance slightly improved
- RLE is now an implicit LZ77 feature - works for any chain element size
alpha 2 - 4th October 2k2:
- little prerelease
Thanks to
~~~~~~~~~
Jeremy Collake, X-Lock, Baader
Please drop comments, improvements, etc...
Visit: y0da.cjb.net
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?