Skip to content

297. Serialize and Deserialize Binary Tree #90

Open
@tech-cow

Description

@tech-cow

Try 2: Bug Free

fromcollectionsimportdequeclassCodec: defserialize(self, root): ifnotroot: return""res= [] queue=deque([root]) whilequeue: node=queue.popleft() ifnode: res.append(str(node.val)) queue.append(node.left) queue.append(node.right) else: res.append("x") return",".join(res) defdeserialize(self, data): ifnotdata: returnNonenums=data.split(",") root=TreeNode(nums[0]) queue=deque([root]) index=0whilequeue: node=queue.popleft() index+=1ifnums[index] !="x": node.left=TreeNode(int(nums[index])) queue.append(node.left) index+=1ifnums[index] !="x": node.right=TreeNode(int(nums[index])) queue.append(node.right) returnroot

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions

      close