private void validateInputData(BinaryNode<Integer> root, int position) {
    if (root == null || position < 0) {
      throw new IllegalArgumentException("You can't pass null binary trees or negative positions.");
    }
  }
This algorithm has a complexity order in space and time terms of O(N) where N is the number of
elements in the tree. It's based on the property of BST. If you go through a BST using a
in order tour you'll get an ordered list of elements.
src/main/java/com/github/pedrovgs/problem44/FindMinNumberAtPosition.java