/*
public class TreeNode {
int val = 0;
TreeNode left = null;
TreeNode right = null;
public TreeNode(int val) {
this.val = val;
}
}
*/
public class Solution {
String Serialize(TreeNode root) {
StringBuilder stringBuilder = new StringBuilder();
if (root == null) {
return stringBuilder.append("#!").toString();
}
stringBuilder.append(root.val+"!");
stringBuilder.append(Serialize(root.left));
stringBuilder.append(Serialize(root.right));
return stringBuilder.toString();
}
int index = -1;
TreeNode Deserialize(String string) {
index ++;
String[] values = string.split("!");
TreeNode node = null;
if (!values[index].equals("#")) {
node = new TreeNode(Integer.valueOf(values[index]));
node.left = Deserialize(string);
node.right = Deserialize(string);
}
return node;
}
}
【牛客】剑指offer---序列化二叉树及反序列化
最新推荐文章于 2025-03-18 14:35:38 发布
