Duplicate subtree in Binary Tree
Submissions: 2982   Accuracy:


  Difficulty: Medium   Marks: 4

Given a Binary Tree, the task is to complete the function dupSub which takes the root of the tree as the only argument and returns true if the Binary tree contains a duplicate sub-tree of size two or more.

Input :  Binary Tree 
             /    \ 
           B        C
         /   \       \    
        D     E       B     
                     /  \    
                    D    E
Output : Yes

Note: Two same leaf nodes are not considered as subtree as size of a leaf node is one.

The first line of input contains an integer T denoting the no of test cases. Then T test cases follow. Each test case contains a string s representing the binary tree.
For example the string : (a(b()())(c()()) represents the below binary tree
    /     \
  b       c

For each test case output will be 1 if the binary tree contains duplicate sub-tree of size two or more else 0.

1<=length of string<=100

Example(To be used only for expected output) :



Note:The Input/Ouput format and Example given are used for system's internal purpose, and should be used by a user for Expected Output only. As it is a function problem, hence a user should not read any input from stdin/console. The task is to complete the function specified, and not to write the full code.

** For More Input/Output Examples Use 'Expected Output' option **

Contributor: Harshit Sidhwa
Author: Shubham Joshi 1

Need help with your code? Please use ide.geeksforgeeks.org, generate link and share the link here.

to report an issue on this page.