[Solved] Consider all the leaves of a binary tree, from left to right order, the values of those leaves form a leaf value sequence.

Question

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

Machine Learning Projects

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.

Example 1:

Machine Learning Projects
Input: root1 = [3,5,1,6,2,9,8,null,null,7,4], root2 = [3,5,1,6,7,4,2,null,null,null,null,null,null,9,8]
Output: true

Example 2:

Machine Learning Projects
Input: root1 = [1,2,3], root2 = [1,3,2]
Output: false

Constraints:

  • The number of nodes in each tree will be in the range [1, 200].
  • Both of the given trees will have values in the range [0, 200].

Python Solution

# 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 make_list(self,root,l):
        if root == None:
            return 
        self.make_list(root.left,l)
        if root.left==None and root.right==None:
            l.append(root.val)
        self.make_list(root.right,l)
    
    def leafSimilar(self, root1: TreeNode, root2: TreeNode) -> bool:
        
        
        l1 = []
        l2 = []
        self.make_list(root1,l1)
        self.make_list(root2,l2)

        return l1==l2
Abhishek Sharma
Abhishek Sharma

Started my Data Science journey in my 2nd year of college and since then continuously into it because of the magical powers of ML and continuously doing projects in almost every domain of AI like ML, DL, CV, NLP.

Articles: 521

Leave a Reply

Your email address will not be published. Required fields are marked *