您的位置:首页 > 其它

100. Same Tree

2016-06-09 22:04 411 查看
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.

如果两个树是一样的,那么前、中、后序遍历也是一样的。

就随便选一个中序遍历吧,每一步都递归判断node的值是否相等以及左右子树是否同样满足条件。

public boolean isSameTree(TreeNode p, TreeNode q)
{
return inorder(p, q);
}

private boolean inorder(TreeNode p,TreeNode q)
{
if(p==null&&q==null)
return true;
if(p==null&&q!=null)
return false;
if(p!=null&&q==null)
return false;
boolean judgeleft=inorder(p.left, q.left);
if(p.val!=q.val)
return false;
boolean judgeright=inorder(p.right, q.right);
return judgeleft&&judgeright;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: