# -*- coding:utf-8 -*-
# class TreeNode:
# def __init__(self, x):
# self.val = x
# self.left = None
# self.right = None
class Solution:
def __init__(self) -> None:
# 序列化
self.str = []
# 反序列化
self.start = -1
def Serialize(self, root):
# write code here
if not root:
self.str.append('#')
return self.str
self.str.append(root.val)
self.Serialize(root.left)
self.Serialize(root.right)
return self.str
def Deserialize(self, s):
# write code here
self.start += 1
if s[self.start] == '#' or self.start > len(s) or not s:
return
node = TreeNode(int(s[self.start]))
node.left = self.Deserialize(s)
node.right = self.Deserialize(s)
return node