题目链接:https://leetcode.com/problems/same-tree/
题目:
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.
思路:
递归两颗树,因为如果两棵树结构相同,访问的结点顺序是一样的,所以结点值不相等,则两颗树不相同。
算法:
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) {
boolean f1 = isSameTree(p.left, q.left);
boolean f2 = isSameTree(p.right, q.right);
return f1 && f2;
} else {
return false;
}
}