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.
Solution:
Actually, the easiest and most intuitive solution for problems relates tree is recursion. So does this problem. It is not hard to find out that if p.val==q.val && p.left is the same as q.left && p.right is the same as q.right, then p and q is the same tree.
public boolean isSameTree(TreeNode p, TreeNode q) {
if(p==null) return q==null;
if(q==null) return p==null;
return p.val==q.val && isSameTree(p.left,q.left) && isSameTree(p.right,q.right);
}
No comments:
Post a Comment