pyhon 层次遍历实现
# -*- coding:utf-8 -*-
# class TreeNode:
#     def __init__(self, x):
#         self.val = x
#         self.left = None
#         self.right = None
class Solution:
    def Serialize(self, root):
        # write code here
        if not root:
            return "#"
        queue = [root]
        res = ""
        while queue:
            cur = queue.pop(0)
            if cur:
                queue.append(cur.left)
                queue.append(cur.right)
                res = res + str(cur.val) + ","
            else:
                res += "#,"
        return res
    def Deserialize(self, s):
        # write code here
        tree_list = s.split(",")
        if tree_list[0] == "#":
            return None
        root = TreeNode(int(tree_list[0]))
        queue = [root]
        i = 1
        while i < len(tree_list)-1:
            cur = queue.pop(0)
            if tree_list[i] != "#":
                left_node = TreeNode(int(tree_list[i]))
                cur.left = left_node
                queue.append(cur.left)
            if tree_list[i+1] != "#":
                right_node = TreeNode(int(tree_list[i+1]))
                cur.right = right_node
                queue.append(cur.right)
            i += 2
        return root