一、知识点:
二叉树
二、文字分析:
比较左子树的左子节点和右子树的右子节点是否相等,同时比较左子树的右子节点和右子树的左子节点是否相等。如果左右节点的值相等,并且左子树的左子节点和右子树的右子节点对称,并且左子树的右子节点和右子树的左子节点对称,则二叉树是轴对称的。
三、编程语言:
java
四、正确代码:
import java.util.*; /* * public class TreeNode { * int val = 0; * TreeNode left = null; * TreeNode right = null; * public TreeNode(int val) { * this.val = val; * } * } */ public class Solution { public boolean isSymmetric(TreeNode root) { if (root == null) { return true; } return isMirror(root.left, root.right); } private boolean isMirror(TreeNode p, TreeNode q) { if (p == null && q == null) { return true; } if (p == null || q == null) { return false; } return (p.val == q.val) && isMirror(p.left, q.right) && isMirror(p.right, q.left); } }