Find Leaves Of Binary Tree is an example of tree problems. In this post we will see how we can solve in Javascript.

Problem Description

Given a binary tree, collect a tree's nodes as if you were doing this: Collect and remove all leaves, repeat until the tree is empty.

Example:

Input: [1,2,3,4,5]

      1
     / \
    2   3
   / \
  4   5

Output: [[4,5,3],[2],[1]]

Explanation:

  1. Removing the leaves [4,5,3] would result in this tree:
      1
     /
    2
  1. Now removing the leaf [2] would result in this tree:
      1
  1. Now removing the leaf [1] would result in the empty tree:
      []

Implementation: Please check the main.js snippet for the solution. If you have different approach in mind or have any suggestion for this implementation feel free to share in the comment below. Thanks!