### Question

The diameter of a tree (sometimes called the width) is the number of nodes on the longest path between two leaves in the tree.

### Solution

This is a similar question to **[LeetCode 124] Binary Tree Maximum Path Sum**. **However there’s a significant difference** which might be overlooked while coding.

Look at this example:

```
0
1
1
0 1
1
```

If we only want to find the max path, that would return result of 5, which is root-to-rightmost-leaf. However, the diameter should be 4, which is the distance between 2 leaf nodes.

A solution is available for reading here.

For **[Google] Crazy Distance Between Strings**, there is another special case: {“1”, “11”, “10”}. The program will not output correct result (1), because this is not really the diameter of a tree, but instead, a max path from a non-leaf to a leaf. I leave this part for you to finish.

### Code

Refer to **[Google] Crazy Distance Between Strings** for complete code.