哈夫曼树简介

哈夫曼树:

定义:

给定N个权值作为N个叶子结点,构造一棵二叉树,若该树的带权路径长度达到最小,称这样的二叉树为最优二叉树,也称为哈夫曼树(Huffman Tree)。哈夫曼树是带权路径长度最短的树,权值较大的结点离根较近。(摘自:百度百科)

基本术语:

路径长度:从根节点到某节点通路上分支的数目,若根节点层数为1,某节点层数为L,则路径长度为L-1

节点的带权路径长度

某个节点的路径长度乘以该节点的权值

树的带权路径长度(WPL)

所有叶子节点的带权路径长度的总和。

构造:

三个步骤:

1、将所有权值构造一个森林,即每棵树只有一个根节点

2、取两个最小的树,分别作为左右节点,根节点为带权路径和,并删除这两棵树,加入新树

3、重复步骤,直到只剩一棵树,即为最优树

posted @ 2020-08-14 13:56  不敢说的梦  阅读(490)  评论(0)    收藏  举报