leetcode-序列化二叉树-85
Posted 天津 唐秙
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了leetcode-序列化二叉树-85相关的知识,希望对你有一定的参考价值。
题目要求
代码实现
/*
struct TreeNode
int val;
struct TreeNode *left;
struct TreeNode *right;
TreeNode(int x) :
val(x), left(NULL), right(NULL)
;
*/
class Solution
public:
char* Serialize(TreeNode *root)
if(!root)
return "#";
string res = to_string(root->val);
res.push_back(',');
char* left = Serialize(root->left);
char* right = Serialize(root->right);
char* ret = new char[strlen(left) + strlen(right) + res.size()];
strcpy(ret, res.c_str());
strcat(ret, left);
strcat(ret, right);
return ret;
TreeNode* deseri(char *&s)
if(*s == '#')
s++;
return nullptr;
//构造根节点的值
int num = 0;
while(*s != ',')
num = num * 10 + (*s - '0');
s++;
s++;
//递归构造树
TreeNode* root = new TreeNode(num);
root->left = deseri(s);
root->right = deseri(s);
return root;
TreeNode* Deserialize(char *str)
return deseri(str);
;
以上是关于leetcode-序列化二叉树-85的主要内容,如果未能解决你的问题,请参考以下文章
LeetCode 297 二叉树的序列化与反序列化[BFS 二叉树] HERODING的LeetCode之路
LeetCode 297. 二叉树的序列化与反序列化(bfs,二叉树,Java)
LeetCode 449 序列化和反序列化二叉搜索树[二叉树 序列化 前序 中序 后序] HERODING的LeetCode之路