描述
给出两个二叉树,请写出一个判断两个二叉树是否相等的函数。
判断两个二叉树相等的条件是:两个二叉树的结构相同,并且相同的节点上具有相同的值。
数据范围:树上的节点数满足 0≤n≤2000 \le n \le 2000≤n≤200 , 树上节点的值满足 0≤val≤50000 \le val \le 50000≤val≤5000
进阶: 空间复杂度 O(1)O(1)O(1) , 时间复杂度 O(n)O(n)O(n)
示例1
输入:
{1},{1}
返回值:
true
示例2
输入:
{1,2},{1,#,2}
返回值:
false
public class Solution {
public boolean isSameTree(TreeNode p, TreeNode q) {
if(p==null&&q==null)
return true;
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);
}
}