快速压缩与解压算法设计与实现_毕业论文

毕业论文移动版

毕业论文 > 计算机论文 >

快速压缩与解压算法设计与实现

摘要在讨论和研究现在软件市场上所流行的压缩软件以及主流的压缩算法的基础上,本文重点研究了 LZW 压缩算法与 Huffman 压缩算法,将两种算法共同使用以达到文件压缩的目的。本文通过使用 JAVA语言先分别对两种压缩算法进行实现,然后对文件依次使用LZW压缩算法和Huffman 压缩算法进行压缩。压缩程序的测试结果证明该程序具有一定的压缩效率,能够对于部分类型的文件进行无损压缩。   28450
毕业论文关键词:压缩软件 压缩算法 LZW算法 Huffman 算法 
Title   Design and implementation  for fast  compression and decompression  algorithm                         
Abstract On the basis of the discussion and research on popular compression software on the software market as well as the mainstream compression algorithm ,this paper mainly studies the LZW compression algorithm and Huffman compression algorithm, in order to achieve the purpose of file compression algorithm.In this paper, through  the  use  of  JAVA  language  respectively  on  two  kinds  of  compression  algorithm implementation, then the files in turn use LZW compression algorithm and Huffman compression  algorithm  to  compress.Compressor  test  results  prove  that  the  program has a certain compression efficiency, can carry on the lossless compression for some types of files.  
Keywords    compressed software  Compression algorithm  LZW algorithm    Huffman algorithm   
目次

1引言..1
1.1课题背景1
1.2发展历史1
1.3本文主要研究工作.2
1.4本文主要章节安排.3
2主要压缩软件的分析对比..4
2.1WinRar软件..4
2.2Winzip软件..4
2.3HaoZip软件..4
2.4360压缩软件.5
2.5几种压缩软件的性能对比..5
3压缩算法的分析..7
3.1无损压缩算法7
3.2有损压缩算法..8
4概要设计10
4.1开发平台说明.10
4.2压缩算法原理介绍.10
5详细设计.17
5.1用户界面流程..17
5.2程序算法分析..19
6程序性能分析24
结论..26
致谢..27
参考文献28
1  引言 1.1  课题背景 在日常生活中,我们常常运用一些缩略语来指代一些事物,比如说 BBC 代表了英国广播公司,CEO代表首席执行官,NBA代表了美国职业篮球联盟等等。我们使用这些缩略语来代替那些冗长的官方名称,为我们的生活带来了不少便利,而这些缩略语就是最为简单的数据压缩。 数据压缩的思想并不是从近代才开始发展的,其实,从古代开始,数据压缩的思想就已经开始萌芽了,人们时常会使用一些简洁的词语来表示各种各样较为复杂的信息。而在 1948年,美国数学家Shannon 首次用数学语言阐明了概率与信息冗余度的关系,并且提出了一种简单的编码方式——Shannon  编码。随后,在许许多多的人的努力下,人们钻研出了各种各样高效的压缩算法,比如众所周知的 Huffman 算法,应用广泛的 LZ系列算法,以及适用于各种特定的文件格式的专用算法。 现在,随着海量数据时代的到来,无论是数据的产生规模还是传输规模与过去的十几年相比都有了跨越式的增长。随着现代计算机技术的飞速发展,图片,音频,视频,文本等大量的多媒体文件[1]越来越多地出现在了人们的日常学习生活之中。相比之下,硬件储存设施虽然也在逐年发展,但是其发展的速度远远赶不上数据的增长规模。爆炸式增长的数据与定量的硬件存储空间之间存在着难以调和的矛盾。与此同时,随着现代计算机技术的飞速发展,互联网已经走进了千家万户,互联网已经成为了人们生活之中不可或缺的重要组成部分,人们已经逐渐习惯了主要从互联网上获取信息。计算机的应用,信息论的产生和发展,数据压缩也受到了越来越多人的关注。研发高效的、无损的压缩数据算法是有效的缓解爆炸式增长的数据与定量的存储空间之间矛盾的有效途径,具有广阔的实用价值。 1.2  发展历史 1948 年,信息论之父 Shannon 的论文“通信的数学理论”中第一次用数学语言阐明了概率与信息冗余度的关系。Shannon 在这一篇论文中指出,任何信息都会存在冗余,信息的冗余程度与信息中每个符号的出现概率或者说不确定性有关。 在这篇论文中,通过借鉴了热力学的概念,Shannon 把信息中排除了冗余后的平均信息量称为“信息熵”,并给出了计算信息熵的数学表达式。此后,Shannon 在此基础上提出了一种简单的编码方式——香农编码[2] (责任编辑:qin)