449 序列化和反序列化二叉搜尋樹

2021-10-25 03:24:58 字數 676 閱讀 4289

序列化是將資料結構或物件轉換為一系列位的過程,以便它可以儲存在檔案或記憶體緩衝區中,或通過網路連線鏈路傳輸,以便稍後在同乙個或另乙個計算機環境中重建。

設計乙個演算法來序列化和反序列化 二叉搜尋樹 。 對序列化/反序列化演算法的工作方式沒有限制。 您只需確保二叉搜尋樹可以序列化為字串,並且可以將該字串反序列化為最初的二叉搜尋樹。

編碼的字串應盡可能緊湊

輸入:root = [2,1,3]

輸出:[2,1,3]

二叉搜尋樹的特點,樹的先序排序,由先序樹和中序樹構造二叉樹,二叉搜尋樹的先序序列,按照先序遍歷可以重構乙個二叉搜尋樹

stringstream的用法:可以用於分割被空格、製表符等符號分割的字串

string str="i am a boy";  

istringstream is(str);  

string s;  

while(is>>s)  

public:

// encodes a tree to a single string.

string serialize(treenode* root)

// decodes your encoded data to tree.

treenode* deserialize(string data)

};

449 序列化和反序列化二叉搜尋樹

序列化是將資料結構或物件轉換為一系列位的過程,以便它可以儲存在檔案或記憶體緩衝區中,或通過網路連線鏈路傳輸,以便稍後在同乙個或另乙個計算機環境中重建。設計乙個演算法來序列化和反序列化二叉搜尋樹。對序列化 反序列化演算法的工作方式沒有限制。您只需確保二叉搜尋樹可以序列化為字串,並且可以將該字串反序列化...

449 序列化和反序列化二叉搜尋樹

序列化是將資料結構或物件轉換為一系列位的過程,以便它可以儲存在檔案或記憶體緩衝區中,或通過網路連線鏈路傳輸,以便稍後在同乙個或另乙個計算機環境中重建。設計乙個演算法來序列化和反序列化 二叉搜尋樹 對序列化 反序列化演算法的工作方式沒有限制。您只需確保二叉搜尋樹可以序列化為字串,並且可以將該字串反序列...

449 序列化與反序列化二叉樹

官方題解 public stringbuilder postorder treenode root,stringbuilder sb encodes a tree to a single string.public string serialize treenode root public tree...