因此,我浏览了网络,stackoverflow 中的几个问题是定义:
- 通常,内部节点是任何不是叶子的节点(没有子节点的节点)
- 非叶/非终端/内部节点 - 至少有一个度不等于 0 的子节点或后代节点
- 据我了解,它是一个不是叶子的节点。
我正要得出结论,根也是一个内部节点,但它的定义似乎有些模棱两可,如下所示:
- 如图所示,内部节点是位于树根和叶子之间的节点
如果我们遵循该定义,那么根节点将不会被视为内部节点。那么根节点是否是内部节点?
因此,我浏览了网络,stackoverflow 中的几个问题是定义:
我正要得出结论,根也是一个内部节点,但它的定义似乎有些模棱两可,如下所示:
如果我们遵循该定义,那么根节点将不会被视为内部节点。那么根节点是否是内部节点?
书中的陈述:离散数学及其应用 - 罗森的第 7 版 说,
有孩子的顶点称为内部顶点。根是一个内部顶点,除非它是图中唯一的顶点,在这种情况下它是一个叶子。
支持定理:
对于任何正整数 n,如果 T 是具有 n 个内部顶点的满二叉树,则 T 有 n + 1 个叶子,总共有 2n + 1 个顶点。
情况1:
O <- 1 internal node as well as root
/ \
O O <- 2 Leaf Nodes
案例2:平凡树
O <- 0 internal vertices (no internal vertices) , this is leaf
恕我直言,当您谈论具有多个节点的树时,我们可以说根节点是内部节点。当只有一个节点(根节点)时,不会出现内部节点的问题。因此,我们可以空洞地说它是一个内部节点。
是的,根节点是一个内部节点。
[更多解释]
根节点永远不会被称为叶节点,即使它是树中唯一存在的节点。例如。如果一棵树只有一个节点,那么我们说它是一棵只有根节点的树,我们永远不会说这棵树有一个叶子节点。
由于内部节点意味着非叶节点,并且因为根节点从不被视为叶节点,所以我会说在单节点树根节点的情况下是内部节点。
“没有子节点的节点是叶节点或外部节点。非叶节点是内部节点。”
资料来源:“Introduction To Algorithms-3rd edition”第 1176 页,最后一行。
因此,root 也是一个内部节点,除非它是树的唯一节点。