这里不限定你的序列 / 反序列化算法执行逻辑,你只需要保证一个二叉树可以被序列化为一个字符串并且将这个字符串反序列化为原始的树结构。...示例:
输入:root = [1,2,3,null,null,4,5]
输出:[1,2,3,null,null,4,5]
思路:
按照题目描述,可以总结出:
序列化和反序列化是可逆操作,因此需要携带完整的二叉树信息...相较于普通的二叉树打印,此题多了额外一步,就是当前节点为空时,需要将null存储到结果数组中。...node.right);
} else {
res.push(null); // 节点为空,插入null
}
}
return JSON.stringify...最终返回结果数组的序列化。
重点来看 「反序列化」 的逻辑。由于序列化是按照BFS来填入数据,那么反序列化依旧可以采用BFS来还原数据,当然也需要额外处理null的逻辑。