对霍夫曼树的建立过程运用逆推法:
当这个过程中的节点序列只有两个节点时(比如前例中的15和18),肯定是一棵最优二叉树,一个编码为0,另一个编码为1,无法再进一步优化。
然后往前步进,节点序列中不断地减少一个节点,增加两个节点,在步进过程中将始终保持是一棵最优二叉树,这是因为:
1.按照霍夫曼树的建立过程,新增的两个节点是当前节点序列中最小的两个,其他的任何两个节点的父节点都大于(或等于)这两个节点的父节点,只要前一步是最优二叉树,其他的任何两个节点的父节点就一定都处在它们的父节点的上层或同层,所以这两个节点一定处在当前二叉树的最低一层。
2.这两个新增的节点是最小的,所以无法和其他上层节点对 [阅读全文] [PDF]
使用java自带的类java.util.zip进行文件/目录的压缩的话,有一点不足,不支持中文的名件/目录命名,如果有中文名,那么打包就会失败。本人经过一段时间的摸索和实践,发现在一般的Ant.jar类库中也有zip类,importorg.apache.tools.zip.*,能够解决不支持中文文件目录的问题,同时,Ant的获得途径也比较多,一般的应用服务器中有这个包,实在不行去下载个tomcat5.X,里面也有ant.jar,本人经过测试,可以使用。例子如下:importjava.io.File;importorg.apache.tools.zip.Zi [阅读全文] [PDF]
许多年前就遇到过这种业务,对ZIP标准压缩文件解压。之前写的操作类现在找不到了,最近项目中又要处理这种业务,所以重新写了一个。Java提供了处理ZIP包的API。但是对中文支持不是很好,所以我直接用Apache Ant里的ZIP操作API来进行处理。ANT的API解决了中文支持问题,而且用起来也非常方便。以下是操作类。 以下的类只是用到Apache的一小部分功能。具体更多的API,请参考文档。在此不多说明了。 * 在项目中导入Apache的ant.jar包到Lib中。 Java代码 /* * Copyright (c) 2008 广州市道一信息技术有限公司 [阅读全文] [PDF]
1 共3条 分1页
- 单片机数码管:51单片机数码管显示的好帮手---MAX...
- 点阵显示屏:智能点阵显示屏HCMS-29xx/39xx及其应用
- 单片机教程:单片机编程入门七
- 汇编语言指令集:IBM-PC汇编语言指令集
- 数据传送指令:MCS-51数据传送指令
- 0083智能工社:浅谈足球游戏的人工智能
- 提拔将领:即时战略游戏将领指挥AI方案设想
- directinput:DirectInput 鼠标编程入门
- 实现爆炸后的振动效果
- 飞机射击类小游戏:有关飞机射击类游戏的设计原理
- 音效最好的播放器:游戏音乐和音效的播放
- 游戏调试:利用双计算机调试游戏程序
- 多任务处理:游戏中的多任务处理
- 电脑游戏中的人工智能制作
- 系统升级:角色扮演游戏的升级系统研究
- rpg游戏制作:深入RPG游戏制作—图形篇
- directdraw:通向DirectDraw的捷径
- 3d场景:如何在3D场景中加入Fog
- 游戏搜索:论游戏中的搜索问题(初级篇)
- directx如何使用:使用DirectX优化声音特性