1.采用层次遍历虽然易于人观察,但代码实现起来麻烦,本次借鉴leetcode官方题解,采用先序遍历实现序列化与反序列化。2.先序遍历的按 root -> left subtree -> right subtree(根左右)的顺序递归进行,例如下面这幅图注意:按牛客网的格式,结果应为 "1!2!3!#!#!4!#!#!5!#!#!" 即用#表示空节点,且每个节点后跟!表示结束。 /** * 先序遍历序列化二叉树 * @param root * @return */ public String Serialize(TreeNode...