872. 叶子相似的树 - 力扣(LeetCode)
下面是一个完整的 Python 函数,接收两个二叉树的根节点 root1
和 root2
,返回它们是否叶相似。
代码实现
class TreeNode:
def __init__(self, val=0, left=None, right=None):
self.val = val
self.left = left
self.right = right
def leafSimilar(root1, root2):
def getLeafSequence(root):
leaf_values = []
def dfs(node):
if not node:
return
if not node.left and not node.right: # 叶子节点
leaf_values.append(node.val)
dfs(node.left)
dfs(node.right)
dfs(root)
return leaf_values
return getLeafSequence(root1) == getLeafSequence(root2)
函数说明
leafSimilar(root1, root2)
:- 通过
getLeafSequence(root)
获取两棵树的叶子序列。 - 比较两个序列是否相同,并返回
True
或False
。
- 通过
这个函数直接传入两个二叉树的根节点即可判断它们是否叶相似。