Here, We see Same Tree LeetCode Solution. This Leetcode problem is done in many programming languages like C++, Java, JavaScript, Python, etc. with different approaches.
List of all LeetCode Solution
![Same Tree LeetCode Solution](https://i0.wp.com/totheinnovation.com/wp-content/uploads/2024/02/LeetCode-Problem-Solution.png?resize=200%2C200&ssl=1)
Same Tree LeetCode Solution
Table of Contents
Problem Statement
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: Input: p = [1,2,3], q = [1,2,3] Output: true Example 2: Input: p = [1,2], q = [1,null,2] Output: false Example 3: Input: p = [1,2,1], q = [1,1,2] Output: false
Same Tree Leetcode Solution C++
class Solution {
public:
bool isSameTree(TreeNode* p, TreeNode* q) {
queue<TreeNode *> queue;
queue.push(p);
queue.push(q);
while (queue.size()!=0){
TreeNode * q2=queue.front();
queue.pop();
TreeNode * q1=queue.front();
queue.pop();
if (q1==nullptr && q2==nullptr) continue;
if (q1==nullptr || q2==nullptr) return false;
if (q1->val!=q2->val) return false;
queue.push(q1->left);
queue.push(q2->left);
queue.push(q1->right);
queue.push(q2->right);
}
return true;
}
};
Code language: PHP (php)
Same Tree Leetcode Solution Java
class Solution {
public boolean isSameTree(TreeNode p, TreeNode q) {
if (p == null && q == null) return true;
return p != null && q != null && p.val == q.val && isSameTree(p.left, q.left) && isSameTree(p.right, q.right);
}
}
Code language: PHP (php)
Same Tree Leetcode Solution JavaScript
var isSameTree = function(p, q) {
return JSON.stringify(p)===JSON.stringify(q)
};
Code language: JavaScript (javascript)
Same Tree Leetcode Solution Python
class Solution(object):
def isSameTree(self, p, q):
if p==None and q==None:
return True
elif p==None or q==None:
return False
if p.val==q.val:
return self.isSameTree(p.left, q.left) and self.isSameTree(p.right, q.right)
else:
return False