Symmetric Tree

EasyMathSortingLinked ListTreeBinary TreeGraph

Description

Given the root of a binary tree, check whether it is a mirror of itself (i.e., symmetric around its center). Return true or false.

Examples

Input:root = [1,2,2,3,4,4,3]
Output:true
Explanation:

Comparing left and right subtrees as mirrors: left child 2 matches right child 2, left's children [3,4] match right's children [4,3] in reverse order.

Input:root = [1,2,2,null,3,null,3]
Output:false
Explanation:

The left subtree has structure [2, null, 3] while the right subtree has [2, null, 3]. For symmetry, the right should mirror as [2, 3, null], but both have right children only.

Input:root = [1]
Output:true
Explanation:

With only a root node and no children, the tree trivially mirrors itself. Both the left and right subtrees are empty (null), which are identical.

Constraints

  • The number of nodes in the tree is in the range [1, 1000]
  • -100 ≤ Node.val ≤ 100

Ready to solve this problem?

Practice solo or challenge other developers in a real-time coding battle!