Advertisement
Symmetric Tree
JavaView on GFG
Symmetric Tree.java
Java
class Node {
int data;
Node left;
Node right;
Node(int data) {
this.data = data;
left = null;
right = null;
}
}
class Solution {
public boolean isSymmetric(Node root) {
if (root == null)
return true;
return check(root.left, root.right);
}
public static boolean check(Node head1, Node head2) {
if (head1 == null && head2 == null)
return true;
if (head1 == null || head2 == null || head1.data != head2.data)
return false;
boolean left = check(head1.left, head2.right);
boolean right = check(head1.right, head2.left);
return left && right;
}
}Advertisement
Was this solution helpful?