zoukankan      html  css  js  c++  java
  • 关于树结构中”度“来源的思考

      上一篇blog主要简述了树、二叉树相关的定义和类型。
      其中一个很重要、很基础的概念就是节点的度。大家有没有想过,为什么要用“度”作为子节点个数的量化单位呢?按理说,如果是子节点个数,用“子”或者“孩”岂不是更好理解?
      那这里要想到,计算机整个体系实际上是一种舶来品,我们需要参照原体系中的定义来进行翻译。所以,我找了一些关于树相关的数据结构的出处,但这个“度”其实就是直白地用degree进行了翻译。
      是不是degree有一些什么特殊的含义,能够用来表示近似子嗣的概念呢?于是我去查了degree的英文释义,但没有什么收获,基本的含义都是表示“程度”。

      在各种查询之后,发现图论中也有“度”这个概念。但与数据结构中树用“度”来表示子节点个数不同,这里的“度”是用来表示节点所连接边的条数,而在有向图中,还有“入度”与“出度”的概念。仔细想想,如果把树结构,连接各个点的边,都从上到下设置为有向,那么数据结构中的“度”与有向图中的“出度”就是相同的了。所以,查到这里我觉得两者应该是同源的。

      那么,图论中为什么用度来定义相关的属性呢?来源自哪里?只能继续Google咯.. 在一篇介绍“有限元分析”中的基本概念时,我看到了一些熟悉的词汇:链接

    这里的node,element,degree,boundary都是图论中的重要基础概念。其中对于degree的表述这里用到了degree of freedom。虽然不确定有限元分析与图论的准确关系,但是至少,两者是非常紧密的。
      看到这里,我好像有点明白了。节点处与外界相连的边,其实就是这个节点能够到其它节点的可能的路径,边越多,路越多,可能性就越多,说自由度更高也就能理解了。图论中还有专门的主题讨论节点这种自由度的分布问题。这里我就大胆臆测,图论中的“度”,其实就是degree of freedom。

      在树这种结构中,接触到度这个概念,还特意地要去强调,度指的是子节点的个数,不包含子节点的子节点在内。但是理解到了自由度这个层面上,也就不会有将子节点的边数计算在内的想法了。

    -----------------------------------------------------------------------

      关于一些基础的,很重要的概念追根溯源,我个人觉得还是很重要。本身如果你心存疑问,就说明多多少少,这种概念和自己的理解是有冲突的,有了冲突如果不去解决,那么我们会本能地把它排斥、遗忘。如果想要内化这些概念,我觉得只有找到它的根源。
      很多人会觉得,这只是文字游戏,我们只需要了解真正技术的原理就好了。我认为这样的观点还是太功利了,如果说要想在计算机这个行业走得远、走得稳、走得快乐,那我觉得只要是自己有疑问的地方,都要积极地去探索,而不单单是那些关键技术。正是这些探索伴随着思考,才能给我们带来真正的收获感,同时让我们对于一些概念、原理掌握地更好,可以说对于一些基础性的知识,我们真的需要这份闲情逸致来慢慢地思考,才能够达到真正的吸收和掌握。如果不去思考一些有趣的问题,单纯背八股又有什么乐趣呢?

  • 相关阅读:
    SQL Server 阻止了对组件 'Ole Automation Procedures' 的 过程'sys.sp_OACreate' 的访问
    谷歌浏览器扩展程序manifest.json参数详解
    获取天气api
    UVA 10385 Duathlon
    UVA 10668 Expanding Rods
    UVALIVE 3891 The Teacher's Side of Math
    UVA 11149 Power of Matrix
    UVA 10655 Contemplation! Algebra
    UVA 11210 Chinese Mahjong
    UVA 11384 Help is needed for Dexter
  • 原文地址:https://www.cnblogs.com/bruceChan0018/p/15268030.html
Copyright © 2011-2022 走看看