construct Binary Tree from preorder and inorder traversal leetcode