public BinaryNode<Integer> transform(Integer[] sortedArray) {
    if (sortedArray == null || sortedArray.length == 0) {
      throw new IllegalArgumentException("You can't use a null or empty array.");
    }
    return transformToBST(sortedArray, 0, sortedArray.length - 1);
  }
Recursive algorithm implemented using a binary search movements. The complexity order of this
algorithm in time terms is O(N) where N is the number of elements in the array. In space
terms, the complexity order is equivalent because we have to return a binary tree with every
element.
src/main/java/com/github/pedrovgs/problem24/SortedArrayToBST.java