public class Codec {
// Encodes a tree to a single string.
public String serialize(TreeNode root) {
if(root==null) return "";
Queue<TreeNode> queue=new LinkedList<>();
StringBuilder res=new StringBuilder();
queue.offer(root);
while(!queue.isEmpty()){
TreeNode cur=queue.poll();
if(cur==null){
res.append("n ");
continue;
}
res.append(cur.val+" ");
queue.offer(cur.left);
queue.offer(cur.right);
}
return res.toString();
}
// Decodes your encoded data to tree.
public TreeNode deserialize(String data) {
if(data=="") return null;
Queue<TreeNode> queue=new LinkedList<>();
String[] values=data.split(" ");
TreeNode root=new TreeNode(Integer.parseInt(values[0]));
queue.offer(root);
for(int i=1;i<values.length;i++){
TreeNode cur=queue.poll();
if(!values[i].equals("n")){
TreeNode left=new TreeNode(Integer.parseInt(values[i]));
cur.left=left;
queue.offer(left);
}
if (!values[++i].equals("n")) {
TreeNode right = new TreeNode(Integer.parseInt(values[i]));
cur.right = right;
queue.add(right);
}
}
return root;
}
}
297. Serialize and Deserialize Binary Tree
最后編輯于 :
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
- 文/潘曉璐 我一進店門洒宝,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人萌京,你說我怎么就攤上這事雁歌。” “怎么了知残?”我有些...
- 文/不壞的土叔 我叫張陵靠瞎,是天一觀的道長。 經(jīng)常有香客問我求妹,道長较坛,這世上最難降的妖魔是什么? 我笑而不...
- 正文 為了忘掉前任扒最,我火速辦了婚禮,結果婚禮上华嘹,老公的妹妹穿的比我還像新娘吧趣。我一直安慰自己,他們只是感情好耙厚,可當我...
- 文/花漫 我一把揭開白布强挫。 她就那樣靜靜地躺著,像睡著了一般薛躬。 火紅的嫁衣襯著肌膚如雪俯渤。 梳的紋絲不亂的頭發(fā)上,一...
- 文/蒼蘭香墨 我猛地睜開眼抡四,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起指巡,我...
- 正文 年R本政府宣布,位于F島的核電站京郑,受9級特大地震影響宅广,放射性物質發(fā)生泄漏。R本人自食惡果不足惜些举,卻給世界環(huán)境...
- 文/蒙蒙 一跟狱、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧户魏,春花似錦驶臊、人聲如沸。這莊子的主人今日做“春日...
- 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至鸠信,卻和暖如春纵寝,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背星立。 一陣腳步聲響...
推薦閱讀更多精彩內容
- Serialization is the process of converting a data structu...
- 二叉樹的序列化和反序列化。我一開始想用BFS的,但第一不知道怎么處理空子樹琳袄,第二不知道怎么還原一棵樹江场。于是照著so...
- 原題 設計一個算法,并編寫代碼來序列化和反序列化二叉樹窖逗。將樹寫入一個文件被稱為“序列化”址否,讀取文件后重建同樣的二叉...
- 題目297. Serialize and Deserialize Binary Tree Serializatio...
- 106. Construct Binary Tree from Inorder and Postorder Tra...