Symmetric Tree
Explore how to verify if a binary tree is symmetric by checking if it mirrors itself using breadth-first search. This lesson helps you understand the concept of symmetric trees and guides you to implement your solution with practical coding exercises.
We'll cover the following...
Statement
Given the root of a binary tree, check whether it is a symmetric tree. A symmetric tree refers to a tree that is a mirror of itself, i.e., symmetric around its root.
Constraints:
- The tree contains nodes in the range .
-
Node.data
Examples
Understand the problem
Let’s take a moment to make sure you’ve correctly understood the problem. The quiz below helps you check if you’re solving the correct problem:
Symmetric Tree
What will be the output if the following tree is given as input?
tree = [25, 4, 67, 2, 3, 3, 2]
__ 25 __
| |
_ 4 _ _ 67 _
| | | |
2 3 3 2
TRUE
FALSE
Figure it out!
We have a game for you to play. Rearrange the logical building blocks to develop a clearer understanding of how to solve this problem.
Try it yourself
Implement your solution in main.js in the following coding playground. We have provided a useful code template in the other file that you may build on to solve this problem.
// Definition of a binary tree node// class TreeNode {// constructor(data) {// this.data = data;// this.left = null;// this.right = null;// }// }import {TreeNode} from './ds_v1/BinaryTree.js';import Queue from "./queue.js"function isSymmetric(root) {// Replace this placeholder return statement with your codereturn false;}export { isSymmetric };