BST from a preorder traversal