谈到压缩这玩意儿,大家可能会想到 忘记压缩密码 将巨大文档变成一个神秘的小文件,而且你还通过这个小文件来恢复这个巨大文档。但是,大家一定都想过,为什么压缩能这么神奇呢?
首先抛开那些什么二叉树,二分查找的。假如让人帮忙复述这一段话:
中华人民共和国于公元2008年在北京举办了奥林匹克运动会。
他可能会说成:
中国2008年在北京举办了奥运会。
一下子短了将近一半!这是怎么回事儿啊?
我们都知道,中国就是指中华人民共和国,奥运会就是指奥林匹克运动会。而公元2008年,即使不加公元,人们也会明白你的意思。所以,这其实就是用一些固定的短语(例如中国)来替代比较长的名词(中华人民共和国)。这种方法在压缩算法中叫做字典。
但是,让机器来做这件事就难多了,因为机器对什么汉语英语一窍不通,更不知道什么中国美国。他无法理解短语、句子,连字是什么他也不关心。所以,我们要想让机器能恢复你的大文档,就必须给他一本厚厚的‘字典’ (当然,机器也不喜欢背字典),这本字典中包含着这个文档中用到的名词,以及比这个名词更短的短语。所以,压缩文件中的内容实际上是:
字典 和 被字典替换过的新句子(比原句子更短ÿ