New update is available. Click here to update.

Topics

You have been given a binary tree of integers. You are supposed to serialize and deserialize (refer to notes) the given binary tree.

You can choose any algorithm to serialize/deserialize the given binary tree. You only have to ensure that the serialized string can be deserialized to the original binary tree.

```
Serialization is the process of translating a data structure or object state into a format that can be stored or transmitted (for example, across a computer network) and reconstructed later. The opposite operation, that is, extracting a data structure from stored information, is deserialization.
```

Detailed explanation

```
1 -1 3 -1 -1
```

```
1 -1 3 -1 -1
```

```
The given tree looks as follows:
1
\
3
The level order traversal of the given tree will be “1 -1 3 -1 -1” where -1 denotes the null nodes.
```

```
1 2 3 -1 4 5 -1 -1 -1 -1 -1
```

```
1 2 3 -1 4 5 -1 -1 -1 -1 -1
```

```
The given tree looks as follows:
1
/ \
2 3
\ /
4 5
The level order traversal of the given tree will be “1 2 3 -1 4 5 -1 -1 -1 -1 -1" where -1 denotes the null nodes.
```

```
The expected time complexity is O(n).
```

```
0 <= 'n' <= 10^6
1 <= 'data' <= 10^8 and data != -1,
Where 'n' is the number of nodes and 'data' is the value at the nodes.
Time Limit: 1 sec
```