tree BST from preorder