美文网首页
数据结构_树_哈夫曼树

数据结构_树_哈夫曼树

作者: arkulo | 来源:发表于2015-09-13 11:08 被阅读153次

github地址:
https://github.com/arkulo56/thought/blob/master/software/dataStruct/数据结构哈夫曼树.md

哈夫曼树

权值越大的叶子越靠近根,带权路径越短!

  1. 路径:节点到另一个节点间之间边的数量
  2. 树的路径长度:根到每个叶子节点的路径之和
  3. 叶子的带权路径:根到叶子节点的路径*权重
  4. 树的带权路径长度(WPL):各叶子结点带权路径之和

用途

  1. 数据权重越高,从根节点到其叶子结点的路径也越短,效率越高
  2. 数据压缩:数据发送越频繁的数据元素,权重越高,则其编码越短

构造

https://raw.githubusercontent.com/arkulo56/thought/master/images/datastruct/huffman.pnghttps://raw.githubusercontent.com/arkulo56/thought/master/images/datastruct/huffman.png
  1. 将带权重的数据按照权重由小到大进行排序
  2. 然后取出最小的两个数据,按照左小右大的原则进行生成,根为N,根的权重为两个叶子数据权重之和
  3. 循环步骤2,再拿出一个数据和N1进行对比权重,然后生成树结构

相关文章

  • 哈夫曼树

    数据结构——哈夫曼树 哈夫曼树又被称为最优二叉树,是指一类带权路径长度最小的二叉树,哈夫曼树的遍历不是唯一的,因为...

  • 数据结构06-哈夫曼树与哈夫曼编码

    数据结构06-哈夫曼树 一、哈夫曼树的基本概念 1.哈夫曼树 给定n个权值作为n个叶子节点,构造一棵二叉树,若带权...

  • 《恋上数据结构与算法一》笔记(十八)哈夫曼树

    目录 哈夫曼编码(Huffman Coding) 哈夫曼树 构建哈夫曼树 构建哈夫曼编码 一 哈夫曼编码(Huff...

  • 《数据结构与算法》总结(七)哈夫曼树

    目录 哈夫曼编码(Huffman Coding) 哈夫曼树 构建哈夫曼树 构建哈夫曼编码 一 哈夫曼编码(Huff...

  • 2018-11-27

    专业英语 第九章 数据结构 根据哈夫曼树求哈夫曼编码以及图的基本定义

  • 题型

    树 二叉树相关计算二叉树的三种遍历序列 前/后序+中序序列构造树 哈夫曼树 哈夫曼树的构造哈夫曼编码带权路径长度压...

  • A simple test

    哈夫曼编码 此代码用于生成哈夫曼树并且获取哈夫曼编码

  • 数据结构_树_哈夫曼树

    github地址:https://github.com/arkulo56/thought/blob/master/...

  • 初识哈夫曼树

    何为哈夫曼树: 哈夫曼树是压缩算法中非常重要数据结构。百度百科解释:给定n个权值作为n个叶子节点,构造一棵二叉树,...

  • 大师兄的数据结构学习笔记(九): 图

    大师兄的数据结构学习笔记(八): 哈夫曼树与哈夫曼编码[https://www.jianshu.com/p/7e4...

网友评论

      本文标题:数据结构_树_哈夫曼树

      本文链接:https://www.haomeiwen.com/subject/ahopcttx.html