哈弗曼编码

上传者: aa1ss2dd3asd | 上传时间: 2022-11-04 20:08:55 | 文件大小: 33.18MB | 文件类型: RAR
利用哈夫曼编码进行对已有文件进行重新编码可以大大提高减小文件大小,减少存储空 间。但是,这要求在首先对一个现有文件进行编码行成新的文件,也就是压缩。在文件使用时,再对压缩文件进行解压缩,也就是译码,复原原有文件。试为完成此功能,写一个压缩解压缩软件。 一个完整的系统应具有以下功能: (1)压缩准备。读取指定被压缩文件,对文件进行分析,建立哈夫曼树,并给出分析结果 (包括数据集大小,每个数据的权值,压缩前后文件的大小),在屏幕上输出。 (2)压缩。利用已建好的哈夫曼树,对文件进行编码,并将哈夫曼编码及文件编码后的数 据一起写入文件中,形成压缩文件(*.Haf)。 (3)解压缩。打开已有压缩文件(*.Haf),读取其中的哈夫曼编码,构建哈夫曼树,读取其 中的数据,进行译码后,写入文件,完成解压缩。 (4)程序使用命令行方式运行 压缩命令 :SZip A Test.Haf 1.doc 解压缩命令:SZip X Test.Haf 2.doc 或 SZip X Test.Haf 用户输入的命令不正确时,给出提示。 (5)使用面向对象的思想编程,压缩/解压缩、哈夫曼构建功能分别构建类实现。

文件下载

资源详情

[{"title":"( 80 个子文件 33.18MB ) 哈弗曼编码","children":[{"title":"压缩与解压new","children":[{"title":"压缩与解压.sln <span style='color:#111;'> 912B </span>","children":null,"spread":false},{"title":"Release","children":[{"title":"压缩与解压.exe <span style='color:#111;'> 96.00KB </span>","children":null,"spread":false},{"title":"压缩与解压.pdb <span style='color:#111;'> 4.35MB </span>","children":null,"spread":false}],"spread":true},{"title":"压缩与解压","children":[{"title":"压缩与解压.cpp <span style='color:#111;'> 2.00KB </span>","children":null,"spread":false},{"title":"stdafx.cpp <span style='color:#111;'> 143B </span>","children":null,"spread":false},{"title":"btnode.h <span style='color:#111;'> 663B </span>","children":null,"spread":false},{"title":"Release","children":[{"title":"CL.write.1.tlog <span style='color:#111;'> 2.86KB </span>","children":null,"spread":false},{"title":"CL.read.1.tlog <span style='color:#111;'> 117.09KB </span>","children":null,"spread":false},{"title":"mt.read.1.tlog <span style='color:#111;'> 1.04KB </span>","children":null,"spread":false},{"title":"rc.write.1.tlog <span style='color:#111;'> 326B </span>","children":null,"spread":false},{"title":"压缩与解压.exe.intermediate.manifest <span style='color:#111;'> 381B </span>","children":null,"spread":false},{"title":"stdafx.obj <span style='color:#111;'> 4.56MB </span>","children":null,"spread":false},{"title":"rc.read.1.tlog <span style='color:#111;'> 2.94KB </span>","children":null,"spread":false},{"title":"压缩与解压.log <span style='color:#111;'> 4.27KB </span>","children":null,"spread":false},{"title":"mt.command.1.tlog <span style='color:#111;'> 780B </span>","children":null,"spread":false},{"title":"cl.command.1.tlog <span style='color:#111;'> 3.81KB </span>","children":null,"spread":false},{"title":"link-cvtres.read.1.tlog <span style='color:#111;'> 2B </span>","children":null,"spread":false},{"title":"压缩与解压.pch <span style='color:#111;'> 29.88MB </span>","children":null,"spread":false},{"title":"压缩与解压.res <span style='color:#111;'> 68.55KB </span>","children":null,"spread":false},{"title":"link.write.1.tlog <span style='color:#111;'> 1.19KB </span>","children":null,"spread":false},{"title":"压缩与解压.lastbuildstate <span style='color:#111;'> 117B </span>","children":null,"spread":false},{"title":"压缩与解压.Build.CppClean.log <span style='color:#111;'> 2.73KB </span>","children":null,"spread":false},{"title":"link-cvtres.write.1.tlog <span style='color:#111;'> 2B </span>","children":null,"spread":false},{"title":"link.command.1.tlog <span style='color:#111;'> 1.84KB </span>","children":null,"spread":false},{"title":"压缩与解压Dlg.obj <span style='color:#111;'> 110.36KB </span>","children":null,"spread":false},{"title":"rc.command.1.tlog <span style='color:#111;'> 626B </span>","children":null,"spread":false},{"title":"link.read.1.tlog <span style='color:#111;'> 4.48KB </span>","children":null,"spread":false},{"title":"mt.write.1.tlog <span style='color:#111;'> 486B </span>","children":null,"spread":false},{"title":"压缩与解压.obj <span style='color:#111;'> 49.12KB </span>","children":null,"spread":false},{"title":"vc100.pdb <span style='color:#111;'> 3.30MB </span>","children":null,"spread":false}],"spread":false},{"title":"res","children":[{"title":"压缩与解压.ico <span style='color:#111;'> 66.19KB </span>","children":null,"spread":false},{"title":"My.rc2 <span style='color:#111;'> 660B </span>","children":null,"spread":false}],"spread":true},{"title":"压缩与解压.rc <span style='color:#111;'> 11.54KB </span>","children":null,"spread":false},{"title":"压缩与解压.vcxproj.filters <span style='color:#111;'> 2.41KB </span>","children":null,"spread":false},{"title":"stdafx.h <span style='color:#111;'> 1.59KB </span>","children":null,"spread":false},{"title":"压缩与解压.h <span style='color:#111;'> 466B </span>","children":null,"spread":false},{"title":"压缩与解压.vcxproj <span style='color:#111;'> 6.03KB </span>","children":null,"spread":false},{"title":"xcept.h <span style='color:#111;'> 1.06KB </span>","children":null,"spread":false},{"title":"targetver.h <span style='color:#111;'> 234B </span>","children":null,"spread":false},{"title":"压缩与解压Dlg.cpp <span style='color:#111;'> 11.61KB </span>","children":null,"spread":false},{"title":"minheap.h <span style='color:#111;'> 2.90KB </span>","children":null,"spread":false},{"title":"压缩与解压.vcxproj.user <span style='color:#111;'> 143B </span>","children":null,"spread":false},{"title":"压缩与解压.aps <span style='color:#111;'> 104.64KB </span>","children":null,"spread":false},{"title":"resource.h <span style='color:#111;'> 2.58KB </span>","children":null,"spread":false},{"title":"binary.h <span style='color:#111;'> 1.86KB </span>","children":null,"spread":false},{"title":"huffman.h <span style='color:#111;'> 191B </span>","children":null,"spread":false},{"title":"Debug","children":[{"title":"vc100.idb <span style='color:#111;'> 1.89MB </span>","children":null,"spread":false},{"title":"CL.write.1.tlog <span style='color:#111;'> 1.07KB </span>","children":null,"spread":false},{"title":"压缩与解压.exe.embed.manifest <span style='color:#111;'> 667B </span>","children":null,"spread":false},{"title":"CL.read.1.tlog <span style='color:#111;'> 64.24KB </span>","children":null,"spread":false},{"title":"mt.read.1.tlog <span style='color:#111;'> 588B </span>","children":null,"spread":false},{"title":"rc.write.1.tlog <span style='color:#111;'> 390B </span>","children":null,"spread":false},{"title":"压缩与解压.exe.intermediate.manifest <span style='color:#111;'> 381B </span>","children":null,"spread":false},{"title":"stdafx.obj <span style='color:#111;'> 624.35KB </span>","children":null,"spread":false},{"title":"rc.read.1.tlog <span style='color:#111;'> 2.99KB </span>","children":null,"spread":false},{"title":"压缩与解压.log <span style='color:#111;'> 4.73KB </span>","children":null,"spread":false},{"title":"mt.command.1.tlog <span style='color:#111;'> 686B </span>","children":null,"spread":false},{"title":"cl.command.1.tlog <span style='color:#111;'> 1.94KB </span>","children":null,"spread":false},{"title":"link-cvtres.read.1.tlog <span style='color:#111;'> 2B </span>","children":null,"spread":false},{"title":"压缩与解压.pch <span style='color:#111;'> 32.25MB </span>","children":null,"spread":false},{"title":"压缩与解压_manifest.rc <span style='color:#111;'> 200B </span>","children":null,"spread":false},{"title":"压缩与解压.res <span style='color:#111;'> 68.49KB </span>","children":null,"spread":false},{"title":"link.write.1.tlog <span style='color:#111;'> 824B </span>","children":null,"spread":false},{"title":"压缩与解压.lastbuildstate <span style='color:#111;'> 71B </span>","children":null,"spread":false},{"title":"link-cvtres.write.1.tlog <span style='color:#111;'> 2B </span>","children":null,"spread":false},{"title":"link.command.1.tlog <span style='color:#111;'> 1.39KB </span>","children":null,"spread":false},{"title":"压缩与解压Dlg.obj <span style='color:#111;'> 101.56KB </span>","children":null,"spread":false},{"title":"rc.command.1.tlog <span style='color:#111;'> 900B </span>","children":null,"spread":false},{"title":"link.read.1.tlog <span style='color:#111;'> 4.38KB </span>","children":null,"spread":false},{"title":"mt.write.1.tlog <span style='color:#111;'> 418B </span>","children":null,"spread":false},{"title":"压缩与解压.exe.embed.manifest.res <span style='color:#111;'> 732B </span>","children":null,"spread":false},{"title":"压缩与解压.obj <span style='color:#111;'> 31.61KB </span>","children":null,"spread":false},{"title":"vc100.pdb <span style='color:#111;'> 3.31MB </span>","children":null,"spread":false}],"spread":false},{"title":"压缩与解压Dlg.h <span style='color:#111;'> 1.03KB </span>","children":null,"spread":false},{"title":"ReadMe.txt <span style='color:#111;'> 3.12KB </span>","children":null,"spread":false}],"spread":false},{"title":"压缩与解压.suo <span style='color:#111;'> 23.50KB </span>","children":null,"spread":false},{"title":"压缩与解压.sdf <span style='color:#111;'> 56.52MB </span>","children":null,"spread":false},{"title":"ipch","children":[{"title":"压缩与解压-902d10df","children":null,"spread":false}],"spread":true},{"title":"Debug","children":[{"title":"压缩与解压.exe <span style='color:#111;'> 169.00KB </span>","children":null,"spread":false},{"title":"压缩与解压.pdb <span style='color:#111;'> 4.82MB </span>","children":null,"spread":false},{"title":"压缩与解压.ilk <span style='color:#111;'> 1.24MB </span>","children":null,"spread":false}],"spread":true}],"spread":true}],"spread":true}]

评论信息

免责申明

【只为小站】的资源来自网友分享,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,【只为小站】 无法对用户传输的作品、信息、内容的权属或合法性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论 【只为小站】 经营者是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。
本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二条之规定,若资源存在侵权或相关问题请联系本站客服人员,zhiweidada#qq.com,请把#换成@,本站将给予最大的支持与配合,做到及时反馈和处理。关于更多版权及免责申明参见 版权及免责申明