[LeetCode]606. Construct String from Binary Tree

来源:互联网 发布:手机怎么看本机mac地址 编辑:程序博客网 时间:2024/05/16 05:47

[LeetCode]606. Construct String from Binary Tree

题目描述

这里写图片描述

思路

二叉树的先序遍历扩展,注意处理子节点为空的三种情况

代码

#include <iostream>#include <string>using namespace std;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 == NULL) return "";        if (t->left == NULL && t->right == NULL) return to_string(t->val) + "";        if (t->right == NULL) return to_string(t->val) + "(" + tree2str(t->left) + ")";        return to_string(t->val) + "(" + tree2str(t->left) + ")" + "(" + tree2str(t->right) + ")";    }};int main() {    TreeNode* t1 = new TreeNode(1);    TreeNode* t2 = new TreeNode(2);    TreeNode* t3 = new TreeNode(3);    TreeNode* t4 = new TreeNode(4);    t1->left = t2;    t1->right = t3;    t2->left = t4;    Solution s;    cout << s.tree2str(t1) << endl;    system("pause");}
阅读全文
0 0
原创粉丝点击