# Runtime: 28 ms, faster than 86.38% of Python3 online submissions for Leaf-Similar Trees.
# Memory Usage: 14 MB, less than 5.55% of Python3 online submissions for Leaf-Similar Trees.
# Definition for a binary tree node.
# class TreeNode:
# def __init__(self, val=0, left=None, right=None):
# self.val = val
# self.left = left
# self.right = right
class Solution:
def leafSimilar(self, root1: TreeNode, root2: TreeNode) -> bool:
self.comp = []
temp = []
def dfs(node):
if node:
if not node.left and not node.right: self.comp.append(node.val)
dfs(node.left)
dfs(node.right)
dfs(root1)
temp = self.comp
self.comp = []
dfs(root2)
return temp == self.comp