| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2010 人关注过本帖
标题:文件的压缩与解压的C算法
只看楼主 加入收藏
rechured
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2008-8-3
收藏
 问题点数:0 回复次数:6 
文件的压缩与解压的C算法
我对压缩算法不懂,但却遇到文件压缩的问题,发个贴子和大家一起讨论,希望有高手指教!

我想找一种这样的压缩软件(算法):
1、能将普通文件压缩到原来的80%以下。
2、(主要是这个要求)解压时可能从压缩文件的任意位置开始解压,而不是从头开始解压。如:我只想解压中间某一段,我就能找到这一段进行解压,其它部分就不解压了。
有这样的压缩软件或算法没有?请高手指点一下,或一起讨论。
搜索更多相关主题的帖子: 算法 文件 压缩 
2008-08-03 17:42
Rand
Rank: 1
等 级:新手上路
帖 子:49
专家分:0
注 册:2008-7-2
收藏
得分:0 
1.信息论与编码理论告诉我们,你的第一个就是不可能实现的,除非压缩后有损失。
2.常用的编码方法(变长)有仙农,费诺,霍夫曼,算术,游程,字典。
其中字典编码是广泛应有的,包括 WinRaR,PKzip,gif png等格式都是得益于字典编码
  广泛应用的压缩算法都是无失真的编码,你想在这些基础上改进,还是先看看编码方法本身吧,虽然这个理论上不是一般的难~
  另外,MP3,Rmvb等的编码就是有损编码,所以体积可以比CD,AVI格式小很多,但是因为有损,所以不可逆的(格式可以反转换,但是里面丢失的信息是不可能找回来了)。这种编码方法和要压缩的文件的性质关系很大,都只能对特定的东西进行压缩
  以上意见给LZ参考吧
2008-08-03 21:54
mark0289
Rank: 1
等 级:新手上路
帖 子:82
专家分:0
注 册:2006-4-5
收藏
得分:0 
不懂啊,没有学过相关理论,云雾之中
2008-08-03 23:51
vfdff
Rank: 6Rank: 6
等 级:侠之大者
威 望:8
帖 子:2172
专家分:425
注 册:2005-7-15
收藏
得分:0 
回复 2# Rand 的帖子
1.信息论与编码理论告诉我们,你的第一个就是不可能实现的,除非压缩后有损失。 这个不一定的吧?有时候游长编码是有效果的
不信看看rar软件就知道了 ,他好像就是游长编码的
2008-08-04 11:13
rechured
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2008-8-3
收藏
得分:0 
回复 2# Rand 的帖子
我说的好像有歧义啊。我是说压缩后的文件大小是没有压缩时的80%以下就OK,也就是压缩率>=20%
这个好办,就是要想解压哪一段就解压哪一段,其余的不解压,这个恐怕难办。
2008-08-04 21:19
Rand
Rank: 1
等 级:新手上路
帖 子:49
专家分:0
注 册:2008-7-2
收藏
得分:0 
[bo][un]vfdff[/un] 在 2008-8-4 11:13 的发言:[/bo]

1.信息论与编码理论告诉我们,你的第一个就是不可能实现的,除非压缩后有损失。 这个不一定的吧?有时候游长编码是有效果的
不信看看rar软件就知道了 ,他好像就是游长编码的


  压缩的比例和信源本身又很大关系,LZ都要80%以上,这个不现实,文件本身的信息量就在那里,不有损的话无法办到。
WinRaR主要是字典编码吧,你看压缩文件的属性那里可以看到有个字典大小~
2008-08-04 21:19
leeco
Rank: 4
等 级:贵宾
威 望:10
帖 子:1029
专家分:177
注 册:2007-5-10
收藏
得分:0 
压缩率和文件内容有关,不可能保证压缩率的,这是显然的,否则我把压缩过的文件再压缩,再压缩,。。。,不是可以到无穷小了嘛
2008-08-05 23:45
快速回复:文件的压缩与解压的C算法
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.020646 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved