lc872. Leaf-Similar Trees

165 阅读1分钟
  1. Leaf-Similar Trees Easy

461

27

Favorite

Share Consider all the leaves of a binary tree. From left to right order, the values of those leaves form a leaf value sequence.

image

For example, in the given tree above, the leaf value sequence is (6, 7, 4, 9, 8).

Two binary trees are considered leaf-similar if their leaf value sequence is the same.

Return true if and only if the two given trees with head nodes root1 and root2 are leaf-similar.

Note:

Both of the given trees will have between 1 and 100 nodes.

思路:dfs 深度优先算法 遍历,加入一个数组,然后比较

代码:python3

class Solution:
    def leafSimilar(self, root1: TreeNode, root2: TreeNode) -> bool:
        l1=[]
        l2=[]
        self.dfs(root1,l1)
        self.dfs(root2,l2)
        if l1==l2:
            return True
        else:
            return False
    def dfs(self,root,l):
        if not root:return
        if not root.left and not root.right:
            l.append(root.val)
            return
        left = self.dfs(root.left,l)
        right = self.dfs(root.right,l)