Leecode100
题目
给定两个二叉树,编写一个函数来检验它们是否相同。
如果两个树在结构上相同,并且节点具有相同的值,则认为它们是相同的。
分析
这道题,题目描述佷短,首先,给了条件是两个二叉树,要求是写出代码实现将两棵树比较并返回出是否相同。这佷明显就用递归实现。
解法
根据分析,通过递归实现。通过判断两结点是否相同和其左右子树是否相同来实现递归。
public class Solution
{
public bool IsSameTree(TreeNode p, TreeNode q)
{
bool l;
bool r;
if(p!=null&&q!=null&&p.val==q.val)
{
l = IsSameTree(p.left,q.left);
r = IsSameTree(p.right,q.right);
if(l==true&&r==true)
{
return true ;
}
return false;
}
else if(p==null&&q==null)
{
return true;
}
else
{
return false;
}
}
}
效果: