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

LZW压缩算法c++实现

于 2022-03-11 发布 文件大小:24.81 kB
0 244
下载积分: 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 个回复

  • A5的实现(使用C语言)
    实现A5算法的加密与解密程序,是源代码程序希望对大家有帮助~亲测有效
    2022-03-31 07:25:57下载
    积分:1
  • 该代码实现了A率和mu率PCM,有详细的注释说明,
    该代码实现了A率和mu率PCM算法,有详细的注释说明,-the code achieved A rate and the rate of PCM mu algorithm, a detailed explanatory notes
    2022-01-28 03:45:50下载
    积分:1
  • 最简练的记忆游戏
    要有简单易懂的交互界面。 2.允许用户输入数字,选择游戏类型,在显示菜单和输入选择过程中要有loading界面 3.按照选择的类型进行游戏,用户根据控制台显示的字符记忆进行输入,如果正确,进入下一关,分数增加并且难度增加 4.要对取胜做出判断,如果记忆的字符输入错误,提示是否继续,是则继续游戏,否则给出分数
    2022-10-20 14:40:03下载
    积分:1
  • this mobile robot program including fuzzy control system, keypad, ultrasonic pin...
    this mobile robot program including fuzzy control system, keypad, ultrasonic ping)), etc-this is mobile robot program including fuzzy control system, keypad, ultrasonic ping)), etc
    2022-12-02 14:45:03下载
    积分:1
  • 非常好的数学公式计源代码,支持程序运行时公式的自定义,支持宏定义、常量定义、函数定义...
    非常好的数学公式计算源代码,支持程序运行时公式的自定义,支持宏定义、常量定义、函数定义-very good mathematical formula source code, run-time support for the procedural formula from the definition of support Acer definition constants defined function definition
    2022-03-05 17:37:44下载
    积分:1
  • delphi-crypto
    厌倦了使用大型库,比如OpenSSL,
    2022-03-18 03:04:30下载
    积分:1
  • 图像旋转(线性插值
    图像旋转(线性插值法)-image rotation (linear interpolation)
    2022-01-23 11:23:21下载
    积分:1
  • 二叉哥的二叉树
    传说计算机学院有一位前辈叫做二叉哥,他十八般算法样样精通。他当年在程设的时候由于二叉树一举成名。大家为了纪念这一事件,尊称他为二叉哥!二叉树是一个什么样的东西呢?现在我们就来揭开二叉哥的二叉树的神秘面纱吧! 下图就是一棵有着9个节点的二叉树。顾名思义,二叉树就像一棵倒着生长的树,每个分叉点可以分出去两个枝条。我们把分叉点叫做“节点”,因为每个分叉点最多可以分出去两个枝条,所以就叫做“二叉”树。最顶层只有一个节点,我们把它叫做根节点。下图中,标号为1的节点就是根节点,它有两个孩子:节点2和节点3。节点2只有一个孩子,标号为4,而节点3有两个孩子,标号分别为5和6。下图中的二叉树第3层有3个节点,分别是7、8和9号节点。 请点击左侧文件开始预览 !预览只提供20%的代码片段,完整代码需下载后查看 加载中 侵权举报 打分 发表评论 暂无评论
    2022-03-02 01:10:28下载
    积分:1
  • windows小帮手,vc6.0开发的,有点小问题
    windows小帮手,vc6.0开发的,有点小问题-windows Assistant, vc6.0 developed a bit small problem
    2022-07-21 13:20:40下载
    积分:1
  • 分枝定界,运筹学
    分枝定界法,运筹学-branch-and-bound method, and operations
    2022-04-24 23:01:41下载
    积分:1
  • 696516资源总数
  • 106914会员总数
  • 0今日下载