Symmetric Tree
Explore how to verify if a binary tree is symmetric by applying breadth-first search traversal. Understand the concept of a mirror tree and implement solutions using JavaScript to build problem-solving skills in tree algorithms.
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 };