Questions
26 of 26
1What is a Tree? Define Node, Root, Leaf, Edge, Height, Depth.
2What is a Binary Tree?
3What is a Binary Search Tree (BST)? What are its properties?
4What is the difference between a Binary Tree and a Binary Search Tree?
5Explain Tree Traversals: Inorder, Preorder, Postorder, Level Order.
6How do you implement Inorder traversal iteratively? (Without recursion)
7How do you find the Lowest Common Ancestor (LCA) of two nodes in a BST?
8How do you validate if a given Tree is a valid BST?
9What is a Balanced Tree? Why do we need balance?
10What is a Complete Binary Tree? A Full Binary Tree? A Perfect Binary Tree?
11What is a Heap? (Min-Heap and Max-Heap)
12How is a Heap implemented using an Array? (Parent/Child index math)
13What is the time complexity of insertion and deletion in a Heap? Why?
14What is Heapify? Explain the process.
15What is a Trie (Prefix Tree)? When is it used?
16How does a Trie compare to a Hash Table for string storage?
17What is an AVL Tree? What is a Red-Black Tree? What is the difference?
18Why do databases prefer B-Trees/B+ Trees over Binary Search Trees?
19How do you serialize and deserialize a Binary Tree?
20What is a Segment Tree? What problems does it solve?
21What is a Fenwick Tree (Binary Indexed Tree)?
22What is the difference between a B-Tree and a B+ Tree? Why are B+ Trees better for disk access?
23Explain the concept of Tree Rotation.
24What is a Splay Tree? When would you use it?
25How do you find the diameter of a Binary Tree?
26How do you check if a tree is symmetric (Mirror image)?
26 / 26

How do you check if a tree is symmetric (Mirror image)?

Difficulty: 3/10

Symmetric Binary Tree

A binary tree is symmetric if its left and right subtrees are mirror images. For two corresponding nodes, their values must be equal, the left child of one must mirror the right child of the other, and the right child must mirror the left child. This can be implemented recursively or iteratively using a queue.

javascript
  1. 1

    Compare the left subtree with the mirror of the right subtree.

  2. 2

    Corresponding values must match.

  3. 3

    a.left must mirror b.right.

  4. 4

    a.right must mirror b.left.

  5. 5

    Time complexity: O(n).

  6. 6

    Recursive auxiliary space: O(h).

Follow-up Questions

  • How would you implement symmetry checking iteratively?
  • What is the difference between symmetry and equality of two trees?
Share

Share via WhatsApp, X, Facebook, LinkedIn or copy link. Open Graph preview enabled.