# How to find height or maximum depth of binary of binary tree ?

4.47K views
0

Given a binary tree, find its maximum depth.

The maximum depth is the number of nodes along the longest path from the root node down to the farthest leaf node.

Note: A leaf is a node with no children.

Example:

Given binary tree [3,9,20,null,null,15,7],

3

/ \

9  20

/  \

15   7

return its depth = 3.

0

Here is a simple Javascript algorithm to achieve the same.

Steps

1. Traverse and find height of left subtree.
2. Traverse and find height of right subtree.
3. Find max between heights of left and right subtrees.
4. return the max height + 1 (for root node).

Javascript code:-

/**
* Definition for a binary tree node.
* function TreeNode(val) {
*     this.val = val;
*     this.left = this.right = null;
* }
*/
/**
* @param {TreeNode} root
* @return {number}
*/
var maxDepth = function(root) {
if (root === null) return 0;
return Math.max(maxDepth(root.left), maxDepth(root.right)) + 1;
};

Changed status to publish