37. 序列化二叉树


文档摘要

序列化二叉树 NowCoder 题目描述 请实现两个函数,分别用来序列化和反序列化二叉树。 解题思路

37. 序列化二叉树

NowCoder

题目描述

请实现两个函数,分别用来序列化和反序列化二叉树。

解题思路

private String deserializeStr; public String Serialize(TreeNode root) { if (root == null) return "#"; return root.val + " " + Serialize(root.left) + " " + Serialize(root.right); } public TreeNode Deserialize(String str) { deserializeStr = str; return Deserialize(); } private TreeNode Deserialize() { if (deserializeStr.length() == 0) return null; int index = deserializeStr.indexOf(" "); String node = index == -1 ? deserializeStr : deserializeStr.substring(0, index); deserializeStr = index == -1 ? "" : deserializeStr.substring(index + 1); if (node.equals("#")) return null; int val = Integer.valueOf(node); TreeNode t = new TreeNode(val); t.left = Deserialize(); t.right = Deserialize(); return t; }

发布者: 作者: 转发
评论区 (0)
U