How Deep Does It Go? Maximum Depth of Binary tree (Medium)

Good morning! Here's our prompt for today.

You may see this problem at Google, Flipkart, Lyft, Ebay, Workday, Reddit, Tesla, Citadel, Coinbase, Sap, Bosch Global, Zoho, and Electronic Arts.

Write a method to determine how deep a binary tree goes. The tree's depth can be described as the number of nodes you encounter as you traverse from the root node to a leaf.

The root node is the topmost node, and a leaf is a node with no children.

For example, you're given the following binary tree:

JAVASCRIPT
1    6
2   / \
3  2  14
4    /  \
5   13   19

The longest distance is from 6 to 19, and we return 3 because it covers 3 nodes.

Description

The method will be invoked like the following:

JAVASCRIPT
1const root = new Node(6);
2
3function howDeep(root) {
4    return;
5};
6
7howDeep(root);

Constraints

  • Number of nodes in the tree <= 100000
  • The nodes will always contain integer values between -1000000000 and 1000000000
  • Expected time complexity : O(logn)
  • Expected space complexity : O(n) considering the call stack
JAVASCRIPT
OUTPUT
Results will appear here.