必须得新建一个函数,函数里两个参数这样写,比如上图第一个二叉树,第三方第一个与最后一个3是对称的,但是父节点不同,假如写成一个函数,没法比较
/** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode(int x) { val = x; } * } */ class Solution { public boolean isSymmetric(TreeNode root) { return panduan(root,root); } public boolean panduan(TreeNode n1,TreeNode n2)//两个子树如果镜像,则每个子树的左子树都和另一个子树的右子树镜像,而且两个子树根节点数值xiangd { if(n1==null&&n2==null) return true; if(n1==null||n2==null) return false; return (n1.val==n2.val)&&panduan(n1.left,n2.right)&&panduan(n1.right,n2.left); } }