哈夫曼算法原理Wikipedia上面说的非常清楚了,这里我就不再赘述,直接贴过来了。1952年, David A. Huffman提出了一个不同的算法,这个算法能够为不论什么的可能性提供出一个理想的树。香农-范诺编码(Shanno-Fano)是从树的根节点到叶子节点所进行的的编码,哈夫曼编码算法却是...
分类:
其他好文 时间:
2014-07-16 21:09:00
阅读次数:
217
哈夫曼树
给定n个权值作为n个叶子结点,构造一棵二叉树,若带权路径长度达到最小,称这样的二叉树为最优二叉树,也称为哈夫曼树(Huffman tree)。哈夫曼树是带权路径长度最短的树,权值较大的结点离根较近。节点的带权长度是这样定义的:节点的权值*根节点到该节点的路径长度。树的带权路径长度(Weighted Path Length of Tree,简记为WPL)则是指所有节点的带权长度和。哈夫曼树就是使WPL最小的一种树,并且哈夫曼树是满二叉树。它的构造方法是哈夫曼方法。哈夫曼树是这样构造的:...
分类:
其他好文 时间:
2014-07-12 19:49:04
阅读次数:
252
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1053讲解: 题意:给定一个字符串,根据哈夫曼编码求出最短长度,并求出比值。 思路:就是哈夫曼编码。把单个字符出现次数作为权值。AC代码: 1 #include 2 #include 3 #inc...
分类:
其他好文 时间:
2014-07-11 21:19:50
阅读次数:
277
理解了Trie树然后就能1A 其实估计这个题随便做做就能A掉,可能不需要高级数据。
先贴吉林大学的代码模板
/*==================================================*| Trie树(k叉)
| INIT: init();
| 注: tree[i][tk]>0时表示单词存在, 当然也可赋予它更多含义;
\*=================...
分类:
其他好文 时间:
2014-07-03 13:42:21
阅读次数:
201
哈夫曼算法原理Wikipedia上面说的非常清楚了,这里我就不再赘述,直接贴过来了。1952年, David A. Huffman提出了一个不同的算法,这个算法能够为不论什么的可能性提供出一个理想的树。香农-范诺编码(Shanno-Fano)是从树的根节点到叶子节点所进行的的编码,哈夫曼编码算法却是...
分类:
其他好文 时间:
2014-07-02 10:37:36
阅读次数:
362
#include
#include
#include
typedef struct{
char a;//记录对应字符
int weight;//权值
int parent,lchild,rchild;
}HTNode,*HuffmanTree;
typedef char * *HuffmanCode;//动态分配数组存储哈夫曼编码表
void Select(H...
分类:
其他好文 时间:
2014-06-30 19:21:16
阅读次数:
205
哈夫曼算法原理Wikipedia上面说的非常清楚了,这里我就不再赘述,直接贴过来了。1952年, David A. Huffman提出了一个不同的算法,这个算法能够为不论什么的可能性提供出一个理想的树。香农-范诺编码(Shanno-Fano)是从树的根节点到叶子节点所进行的的编码,哈夫曼编码算法却是...
分类:
其他好文 时间:
2014-06-26 21:36:45
阅读次数:
437
数据表示和数据结构的关系:
数据表示是由硬件实现的数据类型,而数据结构是由软件实现的数据类型。数据结构是通过数据表示和软件映象相结合方法实现,通俗一点就是数据结构离不开数据表示的支持。
自定义数据表示:
带标示符的数据表示:主要用于指明数据类型(如二进制整数、十进制整数)
数据描述符:描述复杂和多维的结构类型
二者的区别:
标识符是和...
分类:
其他好文 时间:
2014-06-16 20:24:12
阅读次数:
262
gzip是GNU zip的缩写,它是一个GNU自由软件的文件压缩程序,
也经常用来表示gzip这种文件格式。软件的作者是Jean-loup Gailly和Mark
Adler。gzip的基础是DEFLATE,DEFLATE是LZ77与哈夫曼编码的一个组合体。DEFLATE最初是作为LZW以及其它受专...
分类:
其他好文 时间:
2014-05-28 13:37:59
阅读次数:
261
HUFFMAN编码可以很有效的压缩数据,通常可以压缩20%到90%的空间(算法导论)。具体的压缩率取决于数据的特性(词频)。如果采取标准的语料库进行编码,一般可以得到比较满意的编码结果(对不同文件产生不同压缩率的折中方法)。本文采取对单独一个文件进行编码的方式来演示此压缩算法的使用。分为下面几个步骤...
分类:
其他好文 时间:
2014-05-02 00:20:13
阅读次数:
320