101. Symmetric Tree
recursively 比较直白,重点是每次传入要比较的2个,然后魔爪要伸向下下层。。
public class Solution {
public boolean isSymmetric(TreeNode root) {
if (root == null) return true;
return helper(root.left, root.right);
}
public boolean helper(TreeNode left, TreeNode right) {
if (left == null && right == null) return true;
if (left == null || right == null) return false;
if (left.val != right.val) return false;
return helper(left.left, right.right) && helper(left.right, right.left);
}
}
iteratively好像比较麻烦,不想用多余空间的话,用LIST代替QUEUE,每次一层之后夹逼比较。 否则要N/2的多余空间来做专门用于比较的LIST

浙公网安备 33010602011771号