您的位置:首页 > 其它

二叉树判定树结构是否相同,值是否相同

2016-07-13 18:14 204 查看
树定义:

public class TreeNode {
  int val; 
  TreeNode left; 
  TreeNode right; 
  TreeNode(int x) { val = x; } 

}

方法:

public class Mytest03 {

public static void main(String args[]){
TreeNode p = new TreeNode(3);
p.left = new TreeNode(5);
p.right = new TreeNode(6);
p.left.left = new TreeNode(7);
p.right.right = new TreeNode(5);
TreeNode q = new TreeNode(3);
q.left = new TreeNode(5);
q.right = new TreeNode(6);
q.left.left  = new TreeNode(7);
q.right.right = new TreeNode(5);
boolean a = isSameTree(p,q);
System.err.println("a=="+a);
}  

    public static boolean isSameTree(TreeNode p, TreeNode q) {  

        boolean flag = false;  

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

            return true;  

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

            return false;  

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

            return false;  

        if(p.val != q.val)  

            return false;  

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

          

    }  

 

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: