字符出现频率不同,
为了节约空间,
使用不等长编码表示。
根据结点不同的查找频率构造更有效的搜索树。
一、哈夫曼树的定义
哈夫曼树:叶结点到根节点的路径乘叶结点的频率最小。
二、哈夫曼树的构造
如何选取两个最小的?
利用最小堆(效率高)
排序效率不高
三、哈夫曼编码
当所有字符都在叶结点上时,就不会出现一个字符是另一个字符的前缀码。
编码代价=路径长度*叶结点权(频率)
构造一棵哈夫曼树