精华内容
下载资源
问答
  • 什么是树结构

    2021-03-26 15:31:55
    什么是树结构 树的常用术语 节点 (一个树节点) 根节点(顶端的节点root) 父节点(每个子节点都可以当做父节点) 子节点(除了根节点其余节点都能子节点) 叶子节点(没有子节点的节点) 节点的权(节点值) ...

    树的常用术语

    1. 节点 (一个树节点)
    2. 根节点(顶端的节点root)
    3. 父节点(每个子节点都可以当做父节点)
    4. 子节点(除了根节点其余节点都能是子节点)
    5. 叶子节点(没有子节点的节点)
    6. 节点的权(节点值)
    7. 路径(从root节点找到该节点的路线)
    8. 层(树的层级)
    9. 子树(拥有子节点的子节点)
    10. 树的高度(最大层数)
    11. 森林:多颗子数构成森林 (去掉根节点就会形成森林)

    关于树让我们先了解一下数组和链表结构

    数组:数组结构它可以根据指针进行查询,所以说它的查询效率比较快,但是他增删就比较慢因为在增删的时候数组底层其实做一个扩容移动的操作,将原数组复制一份并且长度大于原数组,然后将原数组值放进来在放入新值,效率比较低

    链表:链表结构是分散在内存中的,然后用链进行链接,它的增删就比较快了,因为不需要扩容,只需要添加一个链条指向新添加的数据就行了,删除也是一样,但是他的查询效率就慢了。

    综合上面两个的缺点所以就有了树结构,就拿排序二叉树做对比,他就既保证了查询效率也保证了增删改效率,他是只最多只有两个节点,在进行存储的时候第一个为根节点,每个子节点都是下一个子节点的根节点,没错存储的时候就跟根节点做比较,小的放到左边,大的放到右边。这样在查询的时候,如果比根节点小就往左边查如果大就往右边查。

    展开全文
  • 什么是哈夫曼

    2021-01-29 09:30:23
    给定n个权值作为n个叶子结点,构造一棵二叉树,若该树的带权路径长度(wpl)达到最小,称这样的二叉树为最优二叉树,也称为哈夫曼树。 哈夫曼树带权路径长度最短的树,权值较大的结点离根近。 相关概念的说明: ...

    定义:

           给定n个权值作为n个叶子结点,构造一棵二叉树,若该树的带权路径长度(wpl)达到最小,称这样的二叉树为最优二叉树,也称为哈夫曼树。

           哈夫曼树是带权路径长度最短的树,权值较大的结点离根近。

    相关概念的说明:

          路径和路径长度:在一颗树中,从一个结点往下可以达到的孩子或孙子结点之间的通路,称为路径。通路中分支的数目称为路径长度。若规定根结点的层数为1,则从根结点到第L层结点的路径长度为L-1。

          结点的权及带权路径长度:若将树中结点赋给一个有着某种含义的数值,则这个数值称为该结点的权。结点的带权路径长度为:从根结点到该结点之间的路径长度与该结点的权的乘积。

     

    树的带权路径长度:树的带权路径长度规则为所有叶子结点的带权路径长度之和,记为WPL(weighted  path  length),权值越大的结点离根结点越近的二叉树才是最优二叉树。

    WPL最小的就是哈夫曼树。

     

    展开全文
  • 哈夫曼树的带权路径长度是什么

    千次阅读 2010-04-30 16:09:00
    1.树的路径长度 树的路径长度从树根到树中每一结点的路径长度之和。在结点数目相同的二叉树中,完全二叉树的路径长度最短。2.树的带权路径长度(Weighted Path Length of Tree,简记为WPL) 结点的权:在一些应用...

    1.树的路径长度
     树的路径长度是从树根到树中每一结点的路径长度之和。在结点数目相同的二叉树中,完全二叉树的路径长度最短。

    2. 树的带权路径长度(Weighted Path Length of Tree,简记为WPL)
      结点的权:在一些应用中,赋予树中结点的一个 有某种意义的实数。
      结点的带权路径长度:结点到树根之间的路径长度与该结点上权的乘积。
      树的带权路径长度(Weighted Path Length of Tree):定义为树中所有叶结点的带权路径长度之和,通常记为:

    其中:

    n表示叶子结点的数目
    wi和li分别表示叶结点ki的权值和根到结点ki之间的路径长度。
    树的带权路径长度亦称为树的代价。

    3.最优二叉树 或哈夫曼树
     在权为wl,w2,…,wn的n个叶子所构成的所有二叉树中,带权路径长度最小(即代价最小)的二叉树称为最优二叉树或哈夫曼树。
    【例】给定4个叶子结点a,b,c和d,分别带权7,5,2和4。构造如下图所示的三棵二叉树(还有许多棵),它们的带权路径长度分别为:
    (a)WPL=7*2+5*2+2*2+4*2=36
    (b)WPL=7*3+5*3+2*1+4*2=46
    (c)WPL=7*1+5*2+2*3+4*3=35
      其中(c)树的WPL最小,可以验证,它就是哈夫曼树。

    注意:
    ① 叶子上的权值均相同时,完全二叉树一定是最优二叉树,否则完全二叉树不一定是最优二叉树。
    ② 最优二叉树中,权越大的叶子离根越近。
    ③ 最优二叉树的形态不唯一,WPL最小

    展开全文
  • 作者:李石 ...来源:知乎 著作归作者所有。商业转载请联系作者获得...为了学英语你可以做一个知识也可以做一张思维导图,为了推动项目你可以做一个目录也可以做一张思维导图,但如果你想想的是晚今晚吃什么,明天...

    作者:李石
    链接:https://www.zhihu.com/question/24480617/answer/27968919
    来源:知乎
    著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
     

    1. 知识树/大纲/ 目录是严谨的,思维导图是随意的。为了学英语你可以做一个知识树也可以做一张思维导图,为了推动项目你可以做一个目录也可以做一张思维导图,但如果你想想的是晚今晚吃什么,明天穿什么,周末玩什么,思维导图要轻松的多。不用遵循命名规则,不用设计结构,不用梳理关系,想开始就开始,想结束就结束,随心所欲。
    2. 知识树/大纲/ 目录是封闭的,思维导图是开放的。一个未完成的大纲就不是大纲,一张未完成的思维导图还是一张思维导图,甚至是更合适的思维导图。
    3. 知识树/大纲/ 目录是固化的,思维导图是生长的。思维导图没有完成的概念,我的很多思维导图都是定期维护的,每当学到了新的知识,对工作有了新的理解,对原来的思维导图都可以无所顾忌的升级改进。
    4. 知识树/大纲/ 目录是独立的,思维导图是协作的。每个人做出来的知识树/大纲/ 目录是独立的,而思维导图可以在讨论中直接头脑风暴,也可以分别做最后拼接整合。
    5. 知识树/大纲/ 目录是呆板的,思维导图是灵活的。知识树/大纲/ 目录只能是树状结构,而思维导图可以树状、矩阵、逻辑、鱼骨,可以加外框、联系、标签、备注、附件、连接、概要
    6. 知识树/大纲/ 目录是朴素的,思维导图是绚丽的。思维导图支持各种颜色、图形、线条、图片、背景,甚至是比PPT更便捷的演示模式。

    作者:方可
    链接:https://www.zhihu.com/question/24480617/answer/46690758
    来源:知乎
    著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
     

    我不了解知识树,不谈了。只谈谈思维导图、目录和大纲三者的区别。思维导图相对其它二者比较新,并且没有规范的形式,这也正是它所鼓吹的一面旗帜。如果从定义出发考察他们的区别,区别很大但是意义很小,作为工具,从应用角度倒是颇能找到一点价值,那我就从实际出发,按照大纲、目录和思维导图三者的顺序谈一谈。

    一、大纲
    大纲的应用是要点概括。可能用在起点,提示要表达什么。也可能用在最后,总结表达了什么。大纲也没有什么具体的形式,每个要点可能是个关键字、句子,也可能是个段落。很多演讲者和授课老师会在一张纸上写下大纲,提示一定时间内要讲的内容,作者也会用到大纲,梳理一下将要创作的内容有哪几个基本部分。听众和读者使用大纲一般是在结束时做总结。大纲通常是文字,少有其它的形式。但如果一个人将石头和茶碗放在讲台上,说这就是他今天演讲的大纲,先谈物质再谈应用,那也没什么。总之,大纲是提示和要点的概括。

    二、目录
    目录的应用是分类和编码,是比较专业的东西。通常狭义的目录是指目次,表明章节划分和版面结构。广义上的目录是资源的分类与编码。目录往往有层级结构,或者通过名称的缩进,或者通过标识符号差异(比如空心圆和实心圆、方框和箭头)、或者通过编码的分隔符号(比如1、1.1、1.1.1)。缩进和符号在这里是等价的,因为缩进就是空格,也是一种符号,对程序员最好理解,可以参考Python的缩进与Java的花括号。目录并非用于总结概括,主要为了分类和编码后的检索。很多书前面的目录,严格来说是个大纲。

    三、思维导图(心智图、思维地图)
    思维导图的应用是增强记忆。现在对思维导图的鼓吹太过分了,除去已经产业化和庸俗化的宣传不谈,思维导图有个特点值得赞扬:发明者通过严肃认真的研究,将人们使用绘画实现记录冲动的原始形式,通过轻松的方式又给拉回来了,在文字之外引入了图形、绘画和颜色,让记录变得生动,在“拿起笔来写”这件事情上又助推了一下。很多对思维导图的应用其实是将大纲和目录这种线性模式在二维平面上展开了,这并非它的本意。
    有个事情——想到什么就记下来——其实和思维导图没关系。这种方法古已有之,如果培训机构告诉你这是思维导图的功效,请参考“饿了就吃”与“饿了就来某某餐馆吃”一样,前者是教育,后者是宣传。如果画思维导图,还是用纸笔最好,越是轻量级的工具越方便,只是一旦这样开始了,请注意避开“什么工具和思维导图最搭配”这种倾向,那样迟早会从一个创作者变为一个消费者,用某个产品标榜自己,美其名曰“xxx控”、“xxx粉”。

    以上。我们在应用大纲、目录和思维导图的时候,恐怕不会这样区分,能梳理出头脑中的东西,写下来有条理便于记忆就可以了。

    1,2,3是思维,4,5,6操作,思维重于操作。

    作者:Bella
    链接:https://www.zhihu.com/question/24480617/answer/46526590
    来源:知乎
    著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
     

    我认为二者到底有没有区别,取决于导图要用来做什么。导图的用处warfalcon已经总结过了→思维导图真的有效吗? - warfalcon 的回答

    1.在某些地方是没有区别的,比如列待办事项,讲一些有条理成系统的事,记会议记录,这些已经确定的、或者无法由自己的思维所确定的,导图就是大纲。
    举个栗子:下面这种导图

    我把它归为和大纲没有区别的一类。而且有个坏处就是自己都不记得应该从左上角还是右上角开始讲起(捂嘴笑)

     

    2.在以下这些地方是有区别的

    • 头脑里是一团乱麻,需要用纸笔梳理头绪,这时候与其列有条理的大纲不如画随意的导图
    • 头脑里一片空白,需要头脑风暴,寻求灵感,导图就帮助可以发挥创造力
    • 当导图被高估、被滥用、直到成为一门玄学的时候。。。不解释
    展开全文
  • 二叉排序(Binary Search Tree)。二叉排序又称为二叉查找,二叉搜索。二叉排序和普通的二叉树在结构上一样,它要么一棵空,要么...如果右子不为空,则右子上所有结点的权值都大于该结点的权
  • Kruskal算法实现最小生成主函数第一行aaa就无法输出什么 ``` #include #include #define MaxInt 32767 //表示极大值 #define MVNum 10000 //最大顶点数 using namespace std; /*创建图*/ ...
  • 树:树的直径

    2020-08-01 19:01:31
    什么是树的直径呢? 树的直径就是树中两个节点最远的距离。 那该如何求呢? 其实也很简单。 方法一:树形dp 我们可以运用树形dp,设 gxg_xgx​ 表示从节点x出发走向以x为根的自述,能够到达最远节点的距离,若 edge...
  • 哈夫曼

    千次阅读 2020-01-29 12:00:46
    既然要学哈夫曼树,我们就得知道什么是哈夫曼树,哈夫曼树的作用是什么。我以一个例子来告诉大家哈夫曼树的概念和作用。 期末考试结束了,各个学校都在准备评定大家的考试成绩,现在有一个需求,将学生的百分制成绩...
  • 最小生成树的构造

    千次阅读 2019-11-06 16:13:18
    最小生成 也是图一个特例 什么是生成?...1、最小生成形状不唯一,但最小生成树权是唯一。且为所有生成中最小 2、最小生成边数为顶点数减1 3、若无向连通图边数比顶点数少1,图...
  • 题目大意:给出一个,每条边都有自己权值,给你一个起点S,...思路:这个之前放置有一段时间题了,当时还不会剖,没什么思路,最近学过剖之后,发现可以用剖来解决。 类似洛谷一道题:https://bl...
  • AVL树与红黑树的比较

    2018-12-10 13:54:02
    作者:執著我們執著 ...RB-Tree和AVL作为BBST,其实现算法时间复杂度相同,AVL作为最先提出BBST,貌似RB-tree实现功能都可以用AVL树是代替,那么为什么还需要引入RB-Tree呢? 红黑不追求"完全平...
  • 关于树的重心的问题

    2017-10-30 16:01:13
    )我们来看一下什么是树的重心 由此贴一张百度百科: (我对百度表示极度怀疑,这个刘汝佳老师的紫书居然一模一样~,所以233) 好了,我们用人话翻译一遍, 这样的: 重心的找法:这个点的每个儿子的树的...
  • 先看下什么是”?观察下图,你来看盾什么特征? “”这种数据结构真很像我们现实生活中”,这里面每个元素我们叫作“节点”;用来连线相邻节点之间关系,我们叫作“父子关系”。 比如下图中,...
  • 2019-04-13 17:36:00
    N点带边权树,求每个点到其他点距离第k小值。 Sol 考虑动态点分,每个点开两个vector,v1存点分治时它到所有子节点距离和,v2存它点分上父亲到他所有子节点距离和。 假设一个点x,他父亲fx 那么与x...
  • 浅谈树的直径

    2019-09-27 21:26:53
    What is diameter of the tree(什么是树的直径?) 如下图: 其中,黑色的数字代表标号,红色的数字代表边。 显而易见,这棵树的直径3(直径的定义为:在无向图中,两个最远的点之间相差的距离) 那么,...
  • 哈夫曼树的定义,涉及路径,路径长度,等概念。 二 哈夫曼树相关概念 1. 路径:从树中某一结点到另一个结点之间的分支构成这两个结点之间的路径。 2. 路径长度:路径上分支数目称作为路径长度之和。 3. 树的...
  • 作者:Jarkata ...来源:简书 简书著作归作者所有,任何形式的转载都请联系作者获得授权并注明出处。...维基百科对B树的定义为“在计算机科学中,B树(B-tree)一种树状数据结构,它能够存储数...
  • 树的路径长度从树根到每一个结点的路径长度之和。结点的带权路径长度为从该结点到树根之间的路径长度与结点上的乘积。树的带权路径长度为树中所有叶子结点的带权路径长度之和,通常记作WPL。 对于哈夫曼树而言,...
  • 首页内页权重对比图[/caption] 位置权重优势:按照网站树状发展图,网站的首页属于网站的树干,整棵树的核心,所在的位置主宰着整个网站的命运,所以重要比其他页面高。 链接权重优势:我们换友情链接99%都...
  • 著作归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。 关于这个问题我今天正好看到了这个文章。讲正是各个算法优劣分析,很中肯。 https://zhuanlan.zhihu.com/p/25327755 正好14年时候...
  • 于是,一天晚上他梦到自己被关在了一个有根树中,每条路径都有边,一个神秘声音告诉他,每个点到其他点有一个距离(什么是距离不用说吧),他需要对于每个点回答:从这个点出发第k小距离多少; 如果atm不...
  • 先将输入边从小到大排序,对于一条边,它一定连接着两个联通块u与v,那么这条变对于答案贡献siz[u] * siz[v] * (边 + 1) - 1,别问为什么这太显然了,一想就懂。。。 #include <cstdio> #include ...
  • 因此可以得知,当前形结构根节点就是当前整个形结构最小节点。。。 至于说这种堆结构有什么作用: (1)以前本科时候上数据结构课时候就有讲过堆排序,好像还不错,O(nlogn)复杂度 (2)可以...
  • 什么是赫夫曼树:给定n个权值作为n个叶子结点,构成一颗二叉树若该树的带权路径长度(wpl)达到最小就叫赫夫曼树 什么是wpl: 1,首先路径一个节点往下可以达到的子节点之间的通路 2,路经长度从根节点到该节点之间...
  • Description 我们的大朋友很喜欢计算机科学,而且尤其喜欢多叉树。对于一棵带有正整数点的有根多叉树,如果它...给出一个整数s,你能求出根节点权值为s的神犇多叉树的个数吗?请参照样例以更好的理解什么样的两...
  • 前几篇文章我们学习二叉树、顺序二叉树、线索化二叉树、堆,接下来我们继续学习有关于树的下一个应用结构:哈夫曼树一、什么是哈夫曼树基本介绍1.给定n个权值作为n个叶子结点,构造一棵二叉树,若该树的带权路径长度...
  • 赫夫曼

    2017-08-07 15:39:51
    赫夫曼编码主要用于数据压缩(无损压缩) 什么是赫夫曼树? ...树的带权路径长度:WPL(Weight Path Length)树中所有叶子结点的带权路径长度之和 WPL的值越小,说明构造出来的二叉树的性能越优

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 593
精华内容 237
关键字:

树的权是什么