文件名称:Huffman
-
所属分类:
- 标签属性:
- 上传时间:2012-11-16
-
文件大小:39.19kb
-
已下载:0次
-
提 供 者:
-
相关连接:无下载说明:别用迅雷下载,失败请重下,重下不扣分!
介绍说明--下载内容来自于网络,使用问题请自行百度
本目录下的源代码均属示例、教学性质。作者不对这些代码的功能和性能作任何担保或承诺。
--------
功能说明
--------
本目录下的程序用8种不同的方式实现了Huffman编码算法,这8种方式分别是
* huffman_a 使用链表结构生成Huffman树的算法,这是最基本的实现方法,效率最低。
* huffman_b 使用《数据结构》(严蔚敏,吴伟民,1997,C语言版)中给出的算法,将二叉树存放在连续空间里(静态链表),空间的每个结点内仍有左子树、右子树、双亲等指针。
* huffman_c 使用Canonical Huffman编码,同时对huffman_b的存储结构进行改造,将二叉树存放在连续空间tree里,空间的每个结点类型都和结点权值的数据类型相同,空间大小为2*num,tree[0]未用,tree[1..num]是每个元素的权值,生成Huffman后,tree[1..2*num-1]中是双亲结点索引。
* huffman_d 在huffman_c的基础上,增加预先排序的功能先用QuickSort算法对所有元素的权值从小到大排序,这样,排序后最前面的两个元素就是最小的一对元素了。我们可以直接将它们挑出来,组合成一个子树。然后再子树的权值用折半插入法插到已排序的元素-err
--------
功能说明
--------
本目录下的程序用8种不同的方式实现了Huffman编码算法,这8种方式分别是
* huffman_a 使用链表结构生成Huffman树的算法,这是最基本的实现方法,效率最低。
* huffman_b 使用《数据结构》(严蔚敏,吴伟民,1997,C语言版)中给出的算法,将二叉树存放在连续空间里(静态链表),空间的每个结点内仍有左子树、右子树、双亲等指针。
* huffman_c 使用Canonical Huffman编码,同时对huffman_b的存储结构进行改造,将二叉树存放在连续空间tree里,空间的每个结点类型都和结点权值的数据类型相同,空间大小为2*num,tree[0]未用,tree[1..num]是每个元素的权值,生成Huffman后,tree[1..2*num-1]中是双亲结点索引。
* huffman_d 在huffman_c的基础上,增加预先排序的功能先用QuickSort算法对所有元素的权值从小到大排序,这样,排序后最前面的两个元素就是最小的一对元素了。我们可以直接将它们挑出来,组合成一个子树。然后再子树的权值用折半插入法插到已排序的元素-err
(系统自动生成,下载前可以参看下载内容)
下载文件列表
Huffman/Huffman.ncb
Huffman/Huffman.sln
Huffman/Huffman.suo
Huffman/huffman.vcproj
Huffman/huffman_a.cpp
Huffman/huffman_a.h
Huffman/huffman_b.cpp
Huffman/huffman_b.h
Huffman/huffman_base.cpp
Huffman/huffman_base.h
Huffman/huffman_c.cpp
Huffman/huffman_c.h
Huffman/huffman_d.cpp
Huffman/huffman_d.h
Huffman/huffman_e.cpp
Huffman/huffman_e.h
Huffman/huffman_f.cpp
Huffman/huffman_f.h
Huffman/huffman_g.cpp
Huffman/huffman_g.h
Huffman/huffman_h.cpp
Huffman/huffman_h.h
Huffman/main.cpp
Huffman/main.dsp
Huffman/main.dsw
Huffman/main.ncb
Huffman/main.opt
Huffman/main.plg
Huffman/Makefile
Huffman/README.TXT
Huffman/Debug
Huffman
Huffman/Huffman.sln
Huffman/Huffman.suo
Huffman/huffman.vcproj
Huffman/huffman_a.cpp
Huffman/huffman_a.h
Huffman/huffman_b.cpp
Huffman/huffman_b.h
Huffman/huffman_base.cpp
Huffman/huffman_base.h
Huffman/huffman_c.cpp
Huffman/huffman_c.h
Huffman/huffman_d.cpp
Huffman/huffman_d.h
Huffman/huffman_e.cpp
Huffman/huffman_e.h
Huffman/huffman_f.cpp
Huffman/huffman_f.h
Huffman/huffman_g.cpp
Huffman/huffman_g.h
Huffman/huffman_h.cpp
Huffman/huffman_h.h
Huffman/main.cpp
Huffman/main.dsp
Huffman/main.dsw
Huffman/main.ncb
Huffman/main.opt
Huffman/main.plg
Huffman/Makefile
Huffman/README.TXT
Huffman/Debug
Huffman
本网站为编程资源及源代码搜集、介绍的搜索网站,版权归原作者所有! 粤ICP备11031372号
1999-2046 搜珍网 All Rights Reserved.