如题:
public class BinaryTreeIsSymmertrical28 {
static class Node {
int val;
Node left;
Node right;
public Node(int val){
this.val = val;
}
@Override
public String toString() {
return "Node{" +
"val=" + val +
", left=" + left +
", right=" + right +
'}';
}
}
public static void main(String[] args) {
Node root = new Node(8);
Node node21 = new Node(6);
Node node22 = new Node(6);
Node node31 = new Node(5);
Node node32 = new Node(7);
Node node33 = new Node(7);
Node node34 = new Node(5);
root.left = node21;
root.right = node22;
node21.left = node31;
node21.right = node32;
node22.left = node33;
node22.right = node34;
System.out.println(isSymmertrical(root, root));
}
private static boolean isSymmertrical(Node root1, Node root2) {
if (root1 == null && root2 == null)
return true;
if (root1 == null || root2 == null)
return false;
if (root1.val != root2.val)
return false;
return isSymmertrical(root1.left, root2.right) && isSymmertrical(root1.right, root2.left);
}
}