题目
请实现两个函数,分别用来序列化和反序列化二叉树。
设计一个算法来实现二叉树的序列化与反序列化。不限定序列 / 反序列化算法执行逻辑,你只需要保证一个二叉树可以被序列化为一个字符串并且将这个字符串反序列化为原始的树结构。
以上图为例:
输入: root = [1,2,3,null,null,4,5]
输出:[1,2,3,null,null,4,5]
思路
两个问题:
- 序列化是以怎样的顺序?
- 反序列化是如何进行的?
其实这两个问题也就是让人刚读完题感到无从下手的原因。首先解决第一个问题:
问题一
遍历树无非四种方式——前序、中序、后序、层序。
非常容易得出,本题是按照层序遍历进行的。那么序列化的难点在哪?在于细节实现。
题中描述:不限定序列 / 反序列化算法执行逻辑,你只需要保证