public boolean checkIterative(BinaryNode<Integer> root) {
    validateInput(root);
    List<BinaryNode<Integer>> nodesInOrder = binaryTreeInOrder.getRecursive(root);
    return isListOrdered(nodesInOrder);
  }
Iterative solution to this problem. This algorithm is based on BST properties. If one tree is
BST an in order tour through the tree have to return an already sorted list of elements. The
complexity of this algorithm is O(N) + O(N) = O(N) in time terms and O(N) in space terms. Is
slower than the previous solution but it's an interesting solution based on a already resolved
problem, BST in order = sorted list.
src/main/java/com/github/pedrovgs/problem18/IsBST.java