RLE算法的缺点

RLE算法的缺点,然而,在实际的文本文件中,同样字符多次重复出现的情况并不多见。虽然针对相同数据经常连续出现的图像、文件等,RLE算法可以发挥不错的效果,但它并不适合文本文件的压缩。不过,因为该压缩机制非常简单,因此使用RLE算法的程序也相对更容易编写。笔者曾用自己做成的RLE算法压缩程序对各种类型的文件进行过压缩,其结果如表6-1所示。

表6-1 借助RLE算法对各文件进行压缩的结果
RLE算法的缺点

通过表6-1可以看出,使用RLE算法对文本文件进行压缩后,文件却增大了,而且几乎是压缩前的2倍。这是因为文本文件中同样字符连续出现的部分并不多。以存储着“This is a pen.”这14个字符的文本文件为例,使用RLE算法对其进行压缩后,就变成了“T1h1i1s1 1i1s1 1a1 1p1e1n1.1”这样的28个字符,是压缩前的2倍。由于文章中字符大量连续出现的情况并不多见,因此,使用RLE算法后,大部分字符后面都会加上1,这样一来,压缩后的文件自然变成了之前的2倍。

与文本文件不同,图像文件的压缩比率达到了40%。程序的EXE文件的压缩比率也达到了60%,这是因为EXE文件中连续的数据部分,其初始值为0的情况很多。

此外,我们也可以在RLE算法的基础上再下点功夫,不以1个字符为单位,而以字符串为单位来查找重复次数。例如,This is a pen.中,is重复了两次。通过利用这个压缩技巧,压缩后的文件也能小一些。由此可见,压缩技巧的拙劣是由所花的功夫决定的。

酷客网相关文章:

赞(0)

评论 抢沙发

评论前必须登录!