数据结构
六神max
这个作者很懒,什么都没留下…
展开
-
数据结构——平衡二叉树
(Self-Balancing Binary Search Tree 或 Height-Balanced Binary Search Tree)是一种二叉排序树,其中每一个节点的左子树和右子树的高度差至多等于1。若导致了不平衡,则先找到插入路径上离插入结点最近的平衡因子的绝对值大于1的结点A,再对以A为根的子树,在保持二叉排序树特性的前提下,调整各结点的位置关系,使之重新达到平衡。只要二叉树上有一个结点的平衡因子的绝对值大于1,则该二叉树就是不平衡的。它是一种高度平衡的二叉排序树。原创 2022-11-11 19:56:36 · 442 阅读 · 0 评论 -
数据结构——哈夫曼树与哈夫曼编码
在许多应用中,树中结点常常被赋予一个表示某种意义的数值,称为该结点的权。从树的根到任意结点的路径长度(经过的边数)与该结点上权值的乘积,称为该结点的带权路径长度。树中所有叶结点的带权路径长度之和称为该树的带权路径长度,记为式中,wi 是第i个叶结点所带的权值,li 是该叶结点到根结点的路径长度。在含有n个带权叶结点的二叉树中,其中带权路径长度(WPL)最小的二叉树称为哈夫曼树,也称最优二叉树。例如,下图中的3棵二叉树都有4个叶子结点a, b,c,d,分别带权7,5,2,4,它们的带权路径长度分别为。转载 2022-11-04 18:41:07 · 632 阅读 · 0 评论 -
数据结构——构造哈夫曼树
1.根据给定的n个权值,构造n棵只有根结点的二叉树,这n棵二叉树构成一个森林F。2.在森林中选取两课根结点的权值最小的书作为左右子树构造一棵新的二叉树,4.重复2和3,直到F中只含一棵树为止。这棵树就是哈夫曼树。3.在森林F中删除这两棵树,同时将新得到的二叉树加入F中。原创 2022-11-02 15:57:50 · 5370 阅读 · 0 评论 -
数据结构——树、二叉树、森林的转换
树转换为二叉树:兄弟相连留长子二叉树转换为树:左孩右右连双亲,去掉原来右孩线森林转换为二叉树:树变二叉根相连二叉树转换为森林:去掉全部右孩线,孤立二叉再还原...原创 2020-05-25 23:39:00 · 754 阅读 · 0 评论