java两二叉树相同_java实现判断两个二叉树是否相同

1、定义树节点类:节点值、左节点、右节点、构造器

2、先判断树是否为空的情况

3、树不为空时,判断节点所指的值是否相等,若相等,则递归判断节点的左右节点是否相同,相同则返回true

/**

* 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){

return false;

}

if(p!=null&&q!=null){

if(p.val!=q.val){

return false;

}

else {

return isSameTree(p.left,q.left)&&isSameTree(p.right,q.right);

}

}

return false;

}

}

你可能感兴趣的:(java两二叉树相同)