Given two binary trees, write a function to check if they are equal or not.Two binary trees are considered equal if they are structurally identical and the nodes have the same value.
/**
* Definition for binary tree
* public class TreeNode {
* int val;
* TreeNode left;
* TreeNode right;
* TreeNode(int x) { val = x; }
* }
*/
public class Solution {
public boolean same(TreeNode r1, TreeNode r2){
if(r1 == null && r2 == null)
return true;
else if (r1 == null && r2 != null)
return false;
else if(r1 != null && r2 == null)
return false;
else if(r1.val != r2. val){
return false;
}
boolean result1 = same(r1.left, r2.left);
boolean result2 = same(r1.right, r2.right);
return result1 && result2;
}
public boolean isSameTree(TreeNode p, TreeNode q) {
return same(p,q);
}
}