傲世皇朝动态 NEWS真实、正向、传递价值

当前位置: 首页 > 傲世皇朝动态 > 公司新闻

PTA 人民币美元双向兑换 python

日期:2023-08-08 14:14:28 / 人气:

好的,针对您的问题,以下是一个示例代码,用于列出二叉树的所有叶子节点(假设使用 Python 语言): ```python class TreeNode: def __init__(self, val=0, left=None, right=None): self.val=val self.left=left self.right=right def find_leaves(root: TreeNode): if not root: return [] if not root.left and not root.right: return [root.val] return find_leaves(root.left) + find_leaves(root.right) ``` 以上代码中,我们首先定义了一个 `TreeNode` 类来表示二叉树的节点。然后,我们定义了一个 `find_leaves` 函数来递归寻找所有叶子节点。具体实现如下: - 如果当前节点为空,则直接返回空列表。 - 如果当前节点没有左右子节点,则说明当前节点是叶子节点,直接返回当前节点的值。 - 否则,递归地调用 `find_leaves` 函数,分别处理左右子树,并将结果合并。 使用时,我们只需要构造一棵二叉树,然后调用 `find_leaves` 函数即可。例如,以下代码可以构造一棵简单的二叉树,并输出其所有叶子节点: ```python root=TreeNode(1) root.left=TreeNode(2) root.right=TreeNode(3) root.left.left=TreeNode(4) root.left.right=TreeNode(5) root.right.left=TreeNode(6) root.right.right=TreeNode(7) leaves=find_leaves(root) print(leaves) # 输出 [4, 5, 6, 7] ``` 希望以上代码能够帮助您解决问题。如果您有任何疑问,请随时联系我。

平台注册入口