文章目录
- 题目介绍
- 解题思路
题目介绍
解题思路
在上题【100. 相同的树】的基础上稍加改动,将根节点的左右子树看成左右两个树
递归判断左边的右子树和右边的左子树以及左边的左子树和右边的右子树是否都相同
class Solution {
public boolean isSymmetric(TreeNode root) {
return isSameTree(root.left, root.right);
}
public boolean isSameTree(TreeNode p, TreeNode q) {
if (p == null || q == null) {
return p == q; // 必须都是 null才返回true
}
return p.val == q.val && isSameTree(p.left, q.right) && isSameTree(p.right, q.left);
}
}