leetcode preorder traversal