登录
首页 » 算法 » LZW压缩算法c++实现

LZW压缩算法c++实现

于 2022-03-11 发布 文件大小:24.81 kB
0 242
下载积分: 2 下载次数: 1

代码说明:

应用背景本程序是一个使用C++实现的压缩算法,LZW算法,LZW压缩算法是Lempel-Ziv-Welch 3个人共同发明的,简称 LZW 的压缩算法,可以用任何一种语言来实现它. LZW是GIF图片文件的压缩算法,而且zip压缩的思想也是基于LZW实现的,所以LZW对文本文件具有很好的压缩性能。 LZW压缩算法的基本原理:提取原始文本文件数据中的不同字符,基于这些字符创建一个编码表,然后用编码表中的字符的索引来替代原始文本文件数据中的相应字符,减少原始数据大小。看起来和调色板图象的实现原理差不多,但是应该注意到的是,我们这里的编码表不是事先创建好的,而是根据原始文件数据动态创建的,解码时还要从已编码的数据中还原出原来的编码表. 关键技术编码表中每一项的大小一般为12位,用来代表一个字符串。这样编码表有2**12=4096项,编码值是0~4095。通常情况下0~255是固定的,用 来代表单个字符0~255。而值256通常用来表示开始新的编码表,因为如果编码表的4096项都用完了,而待压缩文件还没有处理完,那么就需要生成新的 编码表继续压缩;257表示压缩结束,用来写到压缩文件尾。从258开始,每个值都代表一个字符串(至少2个字符)。 举个例子,有下面的字符串:ababcdefgefg。(a的ascii码是0x61=97) 压缩后的数据是:97 98 258 99 100 101 102 103 263 103。 请点击左侧文件开始预览 !预览只提供20%的代码片段,完整代码需下载后查看 加载中 侵权举报

下载说明:请别用迅雷下载,失败请重下,重下不扣分!

发表评论

0 个回复

  • mcmc在MATLAB中的源码
    mcmc在MATLAB中的源码
    2022-06-01 12:15:39下载
    积分:1
  • 人工股市(人工股票市场,或ASM)是一个模拟的…
    人工股市(Artificial Stock Market,简称ASM)是模拟股市运作的一个程序-artificial stock market (Artificial Stock Market, or ASM) is a simulation of the operation of a stock market procedures
    2022-01-25 20:29:17下载
    积分:1
  • temporizador
    tempo 1 segundo,led 1赫兹,辅助频率;
    2022-12-26 08:35:03下载
    积分:1
  • 岩体结构面发相密度
    用于计算岩体结构面的法向密度,前提条件是知道优势结构面的产状,知道测线产状和长度,结构面与测线的交点数。程序用于简单的判断岩体的结构特征,并用于RQD值估算。
    2022-07-23 02:47:25下载
    积分:1
  • 一个可以索引和排序的文件系统
    一个可以索引和排序的文件系统- May the index and the arrangement filing system
    2022-08-06 14:50:02下载
    积分:1
  • 电机SVPWM驱动程序
    SVPWM的主要思想是以三相对称正弦波电压供电时三相对称电动机定子理想磁链圆为参考标准,以三相逆变器不同开关模式作适当的切换,从而形成PWM波,以所形成的实际磁链矢量来追踪其准确磁链圆。此程序在KEIL下环境进行编写,能在STM32F103电机驱动板上顺利运行,驱动三相交流异步电机。
    2022-01-30 22:20:54下载
    积分:1
  • 细菌觅食
    细菌觅食技术用在诸多方式中的控制系统。在这里我使用觅食求解实时功能的全球最小的细菌。在使用具有 760 局部最低解
    2022-03-24 14:01:56下载
    积分:1
  • QR 求特征值
    QR分解法是三种将矩阵分解的方式之一。这种方式,把矩阵分解成一个正交矩阵与一个上三角矩阵的积。QR分解经常用来解线性最小二乘法问题。QR分解也是特定特征值算法即QR算法的基础。
    2022-05-15 21:42:18下载
    积分:1
  • 经典关联分析apriori java版
    经典关联分析算法apriori java版。可解决关联分析问题,比如分析超市购物关联关系,产品交叉销售可能性,客户价值提升等
    2022-01-24 15:00:25下载
    积分:1
  • traffic_light
    应用背景`时间1ns / 1ps/////////////////////////////////////////////////////////////////////////////////// /公司:和;/ / /工程师;/ / / / / / / / / /;//创建日期: ; ;15:48:50 11 / 30 / 2关键技术`时间1ns / 1ps///////////////////////////////////////////////////////////////////////////////// /公司:和;/ /工程师:/ / / ///创建日期: ;15:49:44 11 / 30 / 2015/ /设计名称: ;semaforo/ /模块名称: ;C:/用户/学生/文件/应用/ 7 / semaforo_edgar semaforo_fix V。/ /项目名称: ;semaforo_edgar/ /目标设备;/ /工具版本;/ /描述:&;/ / / // / Verilog测试夹具的ISE模块创建:semaforo/ / / // /依赖关系:/ / / / / / / / / /;/ /修订:/ /修订0.01文件创建/ /附加评论:/ / / / / / / / / /;////////////////////////////////////////////////////////////////////////////////模块semaforo_fix;/ /输入reg RST;reg CLK;/ /输出丝SR1;丝SA1;丝SV1;金属锶;丝SA2;线2;//实例化在测单元(UUT)semaforo UUT(。RST(RST),& nbsp;。时钟(CLK),& nbsp;。SR1(SR1),& nbsp;。SA1(SA1),& nbsp;。SV1(STR),& nbsp;Sr(锶)。,& nbsp;。SA2(SA2),& nbsp;SV2(SV2)。);初步开始/ /初始化输入RST = 0;时钟= 0;为全球复位完成100纳秒/ /等待# 100;和公司;及;及;在这里增加刺激终点和公司
    2023-07-12 13:35:02下载
    积分:1
  • 696516资源总数
  • 106914会员总数
  • 0今日下载