【技术实现步骤摘要】
一种文本压缩方法
本专利技术涉及数据压缩领域,尤其涉及一种文本压缩方法。
技术介绍
在数据压缩领域,针对目前在高速数据采集系统的大容量存储和无损传输过程中,存在占用空间大、传输速度慢等问题,利用海量文本数据之间信息的冗余关系和大数据处理技术生成的编码字典,以实现海量文本的高效存储和传输。要解决以上问题,则需要对文本进行压缩。现有的哈夫曼压缩算法压缩率小,需要的统计特性强,自适应性弱,因此,需要提供一种兼顾处理器的能力和内存开销的高压缩率的文本压缩方法,改变传统压缩算法的复杂程度,提高针对海量数据压缩的效率。哈夫曼编码是一种基于统计特性的无损压缩编码,属于变长编码的一种,该编码方法根据字符出现的概率来构建哈夫曼树。但是字典编码不需要提前预测字符的概率分布,无需有关输入数据统计量的先验信息,只需扫描字符创建编码表,用编码表中的字符的编码代替源文件中相应的字符,减少原始数据的大小,在此过程中,当字典被填满是,输入一定长比特数据流,用现有字典进行压缩,然后判断被压缩数据流的压缩比(压缩比=输入流的大小/输出流的大小)是否大于 ...
【技术保护点】
1.一种文本压缩方法,其特征在于,包括以下步骤:/n步骤a、转换源文件为二进制文件,采用字典压缩,利用哈希表作为词条存储结构;/n步骤b、根据字典压缩输出的结果进行统一编码;/n步骤c、根据编码字典对文件在硬件平台进行操作。/n
【技术特征摘要】
1.一种文本压缩方法,其特征在于,包括以下步骤:
步骤a、转换源文件为二进制文件,采用字典压缩,利用哈希表作为词条存储结构;
步骤b、根据字典压缩输出的结果进行统一编码;
步骤c、根据编码字典对文件在硬件平台进行操作。
2.根据权利要求1所述文本压缩方法,其特征在于,步骤a所述的转换压缩过程包括:
步骤a1、将源文件按每个字符8位转换成二进制文件;
步骤a2、利用哈希表将关键字和字符串进行匹配,包括以下步骤:
步骤a21、初始化字典并记录初始化字典的大小,将前缀字符串P赋初值,P=NULL;
步骤a22、读入文件中的一个字符X;
步骤a23、判断所读文件是否为空,如果:
是,结束编码;
否,读入下一个字符X;
步骤a24、判断字符串P+X是否在字典中,如果:
是,则用P=P+X,返回步骤a22;
否,则将P+X添加到字典中,输出P的字典编码,更新P=X;
步骤a25、如果字典未溢出,则返回步骤a22;
步骤a26、判断压缩比是否小于指定阈值,如果:
是,则清除匹配率小的词条;
否,返回步骤a22。
3.根据...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。