- 1、本文档共23页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《程序设计与算法语言》项目报告.doc
《C++程序设计》项目结题报告
小组名称: txt
项目名称:zip压缩软件
小组成员:唐美玲
刘亚楠
黄李成蹊
2013年5月18目录
1 项目结题报告摘要 II
2 项目概述 1
2.1 项目背景 1
2.2 系统目标 1
3 需求分析 2
3.1 系统功能分析 2
3.2 系统性能指标 2
3.3 系统平台 2
4 系统设计 3
4.1 总体设计 3
4.1.1 系统总体结构 3
4.1.2 与子系统接口 3
4.2 全局数据结构说明 3
4.2.1 常量 3
4.2.2 变量 3
4.2.3 数据结构 3
4.3 各子系统结构 3
4.4 数据文件设计 4
4.4.1 数据文件存放位置及命名规范 4
4.4.2 数据文件格式规范 4
5 算法设计 5
5.1 算法3 5
5.2 算法2 5
5.3 算法3 5
5.4 算法n 5
6 系统实现 6
6.1 设计过程 6
6.2 开发过程 6
6.3 测试过程 6
7 使用说明 7
7.1 主菜单的使用 7
7.2 具体各项功能的使用 7
8 项目总结 8
项目结题报告摘要
随着时代的发展人们对数据通信的要求越来越高,为了方便文件的传输和节约磁盘的空间,我们想利用哈夫曼算法编写出一个用来压缩和解压文本文件的压缩软件,利用二进制存储的方法减小文件的大小,通过查阅大量的资料和不断的尝试,最后我们编出了一个可以用来压缩和解压文本文件的zip压缩软件。
关键词:
压缩
解压缩
哈夫曼算法
二进制文件
文本文件
项目概述
项目背景
随着时代的发展,人们对数据通信的要求越来越高,为了方便文件的传输和节约磁盘的空间,人们希望在不影响文件质量的同时文件的大小越小越好。
系统目标
该压缩软件能够无损的压缩小于10M的文本文件
该压缩软件能够将压缩后的文件完整的解压为原文件
该软件的压缩率尽可能的高
该软件的压缩时间和解压时间尽可能的短
需求分析
系统功能分析
1.该压缩软件能够无损的压缩小于10M的文本文件
2.该压缩软件能够将压缩后的文件完整的解压为原文件
系统性能指标
1.该软件的压缩率尽可能的高
2.该软件的压缩时间和解压时候尽可能的短
系统平台
VC++6.0
系统设计
总体设计
系统总体结构
与子系统接口
全局数据结构说明
常量
const int N = 256
N表示字符种类的最大值
变量
int Leaf, Sum, Length, CodeLength
Leaf:总叶子个数;
Sum:总节点个数;
Length:源文件字符总长;
CodeLength压缩后编码的长度
数据结构
int num[100];
num数组用来存储各种长度的编码个数
char daiyasuo[50];
daiyasuo数组用来存储用户输入的待压缩文件的文件名
char daijieya[50];
daijieya数组用来存储用户输入的压缩后和待解压文件的文件名
char jieyahou[50];
jieyahou数组用来存储用户输入的解压后的文件的文件名
struct Node
{
Node *parent;
Node *left;
Node *right;
unsigned char info;
int weight;
char code[1000];
};
结构体Node用来存储节点,节点中包含父节点,左孩子,右孩子,字符,出现次数, 编码
各子系统结构
4.3.1压缩
4.3.2解压
数据文件设计
数据文件存放位置及命名规范
存放位置:
待压缩文件,压缩后文件,待解压文件和解压后文件都存放在程序所在文件夹的目录下
命名规范:
所有的文件均以txt的格式存储,名称由用户自己确定
数据文件格式规范
无
算法设计
编码过程
编码过程中的总算法
计算机编程实现时,首先统计带编码的文本文件中各个字符出现的次数,然后将概率作为节点的权值,并进行排序,然后构建huffman树。
编码时从叶子节点出发,如果这个节点在左子树上,则编码0,否则编码1,直
文档评论(0)