说我有一棵树,有N个顶点和N-1条边。用下面给出的数据构造树。它包含一对整数,这些整数表示通过边连接的顶点。该树始终以1为根。
示例:
1 2
3 1
3
/
1
/
2
在此示例中,考虑到树的根是1,叶子节点是什么?这甚至是有效的树形构造吗?
答案 0 :(得分:1)
如果1是根,我会说2和3是叶子,但是我宁愿这样绘制:
1
/ \
2 3
或相反:
2 3
\ /
1
答案 1 :(得分:0)
叶是在树中没有子节点的节点。现在回到您的问题:
这甚至是有效的树形结构吗?
是的,它是一棵有效的树。
按照上面的定义:示例中的叶子节点(树的根源为1):
3
/
1
/
2
叶子节点为:2和3(因为两个和3没有子节点)。
检查叶节点的简单程序:
boolean isLeaf(Node node)
{
if(node == null)
return false;
return node.left == null && node.right == null;
}