**Objective:** Given a binary Tree, write an algorithm to find the maximum width.

**Note: **Maximum width of a tree is nothing but the Max(nodes at each level).

**Input:** A Binary Tree

**Output: **Maximum width of a given tree.

**Example**:

**Approach:**

The solution of this problem is very simple, Do level order traversal and in recursive calls count the number of nodes at each level and keep track of Max of them and at the end return the max.

Read this solution ” Level Order Traversal, Print each level in separate line” and implement the above approach.

**Complete Code:**

**Output:**

Maximum Width of a binary Tree is : 4

Here is an alternate approach without using Queue data structure. It uses recursion to traverse binary tree and count width of each level.

http://www.techcrashcourse.com/2016/06/program-to-find-maximum-width-of-binary-tree.html

http://www.techcrashcourse.com/2016/06/data-structures-programming.html