【ShancoLove】带你看数据结构——第十一课:哈夫曼树
2015-11-09 20:16
302 查看
在数的结点赋值,叫做权值,每一个结点到根节点的距离称为路径
哈夫曼树就是研究(权值)*(路径)之和的最小值
在一个无序的数组中任意选取两个值,为结点,并求出他们的父节点(权值之和),再将父节点和数组中剩余的n-2个中最小的组成,如此重复
哈夫曼编码:哈夫曼树的左分支为0,右为1,从根节点可以顺序往下读,找到每一个权值的位置
还有一个是应用时判定树,可以通过父节点来判断此数据是否符合父节点的条件,一般左为Y,右为N
树转变成二叉树:
(1)保留所有结点与其左子结点的连接;
(2)连结所有同一父结点的子结点;
(3)打断所有结点原本与右子结点的连接;
(4)将兄弟结点顺时转45度。
哈夫曼树就是研究(权值)*(路径)之和的最小值
在一个无序的数组中任意选取两个值,为结点,并求出他们的父节点(权值之和),再将父节点和数组中剩余的n-2个中最小的组成,如此重复
哈夫曼编码:哈夫曼树的左分支为0,右为1,从根节点可以顺序往下读,找到每一个权值的位置
还有一个是应用时判定树,可以通过父节点来判断此数据是否符合父节点的条件,一般左为Y,右为N
树转变成二叉树:
(1)保留所有结点与其左子结点的连接;
(2)连结所有同一父结点的子结点;
(3)打断所有结点原本与右子结点的连接;
(4)将兄弟结点顺时转45度。
相关文章推荐
- java数据结构
- 数据结构之最短路径Dijkdtra算法
- 网络常用的数据结构
- 第八周--数据结构--计数的模式匹配
- 第八周 数据结构之自建算法库——链串
- 第八周 数据结构实践项目——串 【项目2 - 建立链串的算法库】
- 项目2--用二叉树求解代数表达式
- 第11周SHH数据结构-【 项目1 层次遍历算法 】
- 第八周 数据结构实践项目——串 【项目1 - 建立顺序串的算法库
- *第十一周*数据结构实践项目一【二叉树的层次遍历算法】
- 项目1.4--哈弗曼编码的算法验证
- 项目1.3--中序线索化二叉树的算法验证
- 项目1.2-- 二叉树构造算法的验证
- 第十一周 项目1.1--层次遍历算法验证
- 第10周SHH数据结构-【项目3 -求二叉树b的叶子节点个数 . 】
- 数据结构实践——迷宫问题之图深度优先遍历解法
- 数据结构实践——二叉树遍历思想解决问题
- 第十周 项目3--利用二叉树遍历思想解决问题
- 第十周 项目2--二叉树遍历的递归算法
- 数据结构实践—— 二叉树遍历的递归算法