1.题目描述
对称二叉树
给你一个二叉树的根节点 root , 检查它是否轴对称。
示例 1:
输入:root = [1,2,2,3,4,4,3]
输出:true
示例 2:
输入:root = [1,2,2,null,3,null,3]
输出:false
2.思路
2.1 代码
递归时,用左树的右子树与右树的左子树、左数的左子树与右树的右子树进行比较。
class Solution {
public boolean isSymmetric(TreeNode root) {
return process(root.left, root.right);
}
public boolean process(TreeNode left, TreeNode right) {
if (left == null ^ right == null) {
return false;
}
if (left == null && right == null) {
return true;
}
return left.val == right.val && process(left.left, right.right) && process(left.right, right.left);
}
}
2.2 测试结果
通过测试
3.总结
二叉树基础题目,用左树的右子树与右树的左子树、左数的左子树与右树的右子树进行递归比较。