# -*- coding:utf-8 -*-
# class TreeNode:
# def __init__(self, x):
# self.val = x
# self.left = None
# self.right = None
from queue import deque
class Solution:
def Serialize(self, root):
# write code here
if not root:
return "{}"
value = root.val
left = self.Serialize(root.left)
right = self.Serialize(root.right)
return str({"v":value,"l":left,"r":right})
def Deserialize(self, s):
# write code here
if not s:
return None
d = eval(s)
if "v" not in d:
return None
root = TreeNode(d["v"])
left = self.Deserialize(d["l"])
right = self.Deserialize(d["r"])
root.left = left
root.right = right
return root