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

LZW压缩算法c++实现

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

  • 小游戏“神奇翻转”
    也称“点灯游戏”。9×9的矩阵中,每选择一个元素,它与其上下左右共5个元素都会由1变为0、或是由0变为1。将所有元素变为1则胜利。本源码使用命令行界面实现这一功能,一方面支持用户手动操作游玩,另一方面给出了算法来自动解决这一问题。
    2023-05-20 19:20:03下载
    积分:1
  • iLBC_dll源码
    一个iLBC dll的C++源码,基于VC++开发的一款iLBC相关的dll文件,可以正常的编译运行。可以用于参考,当然很多地方都是借鉴过来的
    2022-03-06 10:32:26下载
    积分:1
  • Boltzman simulated annealing algorithm examples
    boltzman 模拟退火算法例子-Boltzman simulated annealing algorithm examples
    2022-09-05 01:25:03下载
    积分:1
  • GEP(函数发现等)
    基于遗传算法的基因编程表达式,在函数发现这方面具有较好的表现。用C#实现,在做参数优化的时候用上GEP会取得更好的效果。 不同于GA,不会出现过早收敛
    2022-01-31 12:28:25下载
    积分:1
  • FCT-VOf 2D code which helps you to simulate convection, rotation & shear flow test case
    该程序用FORTRAN语言编写,用通量修正输运算法模拟二维自由表面流动。该程序可以模拟开孔方形和圆形对流试验箱以及开槽圆形试验箱的剪切试验箱和旋转试验箱。
    2022-05-22 03:30:05下载
    积分:1
  • superpiexl 段
    superpiexl 是一种分割方法和理念,将图像分割成一个个类似大pixel的块儿,艾玛,我的表述怎么这么不给力,总之,它是图像预处理过程。这里上传的这个code,是superpiexl的实现,可以直接使用,观察图像分割的结果,enjoy it!
    2022-03-19 11:17:10下载
    积分:1
  • 这是一个功能极其强大的软件包,其中包括很多数值,速度极快。...
    这是一个功能极其强大的软件包,其中包括很多数值算法,速度极快。-This is a function of extremely powerful package, which include numerical algorithm, fast.
    2022-02-15 15:47:20下载
    积分:1
  • V-Blast
    它采用一种直接的天线与层的对应关系,即编码后的第k个子流直接送到第k根天线,不进行数据流与天线之间对应关系的周期改变。如图1.c所示,它的数据流在时间与空间上为连续的垂直列向量,称为V-BLAST(Vertical-BLAST)
    2022-01-20 22:43:10下载
    积分:1
  • massive mimo Fundamentals, Opportunities and Challenges
    应用背景Massive multiuser MIMO (MISO): ◮ M ≫ K ≫ 1 (think 100 × 10 or 500 × 50) ◮ coherent, but simple, processing ◮ Potential to dramatically improve rate & reliability ◮ Potential to drastically scale down TX power ◮ Not only theory, at least one known testbed (64× ∼10) 关键技术 Massive MIMO Operation Not enough resources for pilots & CSI feedback, so operate in TDD. ◮ On the uplink, ◮ acquire CSI from uplink pilots and/or blindly from data ◮ detect symbols ◮ M ≫ K ⇒ linear processing (MRC, ZF, MMSE) nearly optimal ◮ On the downlink, ◮ use CSI obtained on the uplink ◮ make necessary adjustments based on reciprocity calibration ◮ apply multiuser MIMO precoding ◮ simple precoders desirable (and very good!): MRT, ZF, MMSE, ... ◮ MRC/MRT operation ◮ intracell interference will appear as
    2022-07-07 16:58:08下载
    积分:1
  • 任何给一些数一个和,出这些可以有哪些方式计得到这个和的....
    任何给一些数一个和,算出这些可以有哪些方式计算得到这个和的算法.-any given some a few and calculate what they can be calculated and this algorithm.
    2023-03-03 16:45:04下载
    积分:1
  • 696518资源总数
  • 105873会员总数
  • 12今日下载