Construct String from Binary Tree 发表于 2017-06-05 | 分类于 算法 Construct String from Binary Tree题目描述: 给定一棵树的头节点按照规则重建该树的字符串形式。 例子: 具体描述可以看LeetCode606 解题思路: 主要的解题想法是递归。当然在本题中需要注意的是,左子树是空的情况和右子树是空的情况需要不同的处理。 代码如下:1234567891011121314151617181920212223/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {} * }; */class Solution {public: string tree2str(TreeNode* t) { if (!t) return ""; string root = to_string(t->val); string left = tree2str(t->left); string right = tree2str(t->right); if (left == "" && right == "") return root; else if (right == "") return root + "(" + left + ")"; else return root + "(" + left + ")" + "(" + right + ")"; }};