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 isSameTree(TreeNode p, TreeNode q) {
if( p==null && q==null ){
return true;
}else if( p!=null && q==null || p==null && q!=null){
return false;
}else if( p.val==q.val ){
return isSameTree(p.right,q.right) && isSameTree(p.left,q.left);
}else{
return false;
}
}
}