📅  最后修改于: 2023-12-03 14:57:27.422000             🧑  作者: Mango
在二叉树中,叶节点是指没有子节点的节点。本程序的目的是计算二叉树中叶节点的个数。
本程序使用递归算法来计算二叉树中叶节点的数量。具体算法如下:
下面是使用Python语言实现的代码:
def count_leaves(root):
if root is None:
return 0
if root.left is None and root.right is None:
return 1
return count_leaves(root.left) + count_leaves(root.right)
假设有以下二叉树:
1
/ \
2 3
/ \
4 5
可以使用如下代码计算该二叉树中的叶子节点数量:
root = Node(1)
root.left = Node(2)
root.right = Node(3)
root.right.left = Node(4)
root.right.right = Node(5)
count = count_leaves(root)
print("Leaves count:", count) # 输出:Leaves count: 2
计算二叉树中叶节点数量的程序使用递归算法实现。使用递归可以简化代码实现过程,提高代码的可读性。给定一个二叉树,本程序可以在$O(n)$时间复杂度内计算出其中叶节点的个数。