struct TreeNode { char data; TreeNode* left; TreeNode* right; TreeNode(char c) : data(c), left(nullptr), right(nullptr) {} };