Description
You are given an integer array nums with no duplicates. A maximum binary tree can be built recursively from nums using the following algorithm:
- Create a root node whose value is the maximum value in nums.
- Recursively build the left subtree on the subarray prefix to the left of the maximum value.
- Recursively build the right subtree on the subarray suffix to the right of the maximum value.
Return the maximum binary tree built from nums.
Example 1:

1 | Input: nums = [3,2,1,6,0,5] |
Example 2:

1 | Input: nums = [3,2,1] |
Constraints:
1 | 1 <= nums.length <= 1000 |
Solution

1 | # Definition for a binary tree node. |