Same Tree Problem


Description

LeetCode Problem 100.

Given the roots of two binary trees p and q, write a function to check if they are the same or not.

Two binary trees are considered the same if they are structurally identical, and the nodes have the same value.

Example 1:

1
2
Input: p = [1,2,3], q = [1,2,3]
Output: true

Example 2:

1
2
Input: p = [1,2], q = [1,null,2]
Output: false

Example 3:

1
2
Input: p = [1,2,1], q = [1,1,2]
Output: false

Constraints:

  • The number of nodes in both trees is in the range [0, 100].
  • -10^4 <= Node.val <= 10^4


Sample C++ Code

1
2
3
4
5
6
7
8
9
10
11
12
13
class Solution {
public:
    bool isSameTree(TreeNode* p, TreeNode* q) {
        if ((p == NULL) && (q == NULL))
            return true;
        else if ((p == NULL) || (q == NULL))
            return false;
        else if (p->val != q->val)
            return false;
        else 
            return (isSameTree(p->left, q->left) && (isSameTree(p->right, q->right)));
    }
};




Related Posts

Convert Sorted Array to Binary Search Tree Problem

LeetCode 108. Given an integer array nums where the elements...

Validate Binary Search Tree Problem

LeetCode 98. Given the root of a binary tree, determine...

Same Tree Problem

LeetCode 100. Given the roots of two binary trees p...

Recover Binary Search Tree Problem

LeetCode 99. You are given the root of a binary...

Unique Binary Search Trees Problem

LeetCode 96. Given an integer n, return the number of...

Unique Binary Search Trees II Problem

LeetCode 95. Given an integer n, return all the structurally...