449. Serialize and Deserialize BST
来源:互联网 发布:path软件太好了 编辑:程序博客网 时间:2024/06/05 11:24
Serialization is the process of converting a data structure or object
into a sequence of bits so that it can be stored in a file or memory
buffer, or transmitted across a network connection link to be
reconstructed later in the same or another computer environment.Design an algorithm to serialize and deserialize a binary search tree.
There is no restriction on how your serialization/deserialization
algorithm should work. You just need to ensure that a binary search
tree can be serialized to a string and this string can be deserialized
to the original tree structure.The encoded string should be as compact as possible.
Note: Do not use class member/global/static variables to store states.
Your serialize and deserialize algorithms should be stateless.
/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {} * }; */class Codec {public: // Encodes a tree to a single string. string serialize(TreeNode* root) { if(!root) return " #"; string ans = " "+to_string(root->val); return ans + serialize(root->left) + serialize(root->right); } TreeNode* DFS(istringstream &is) { string str; is >> str; if(str == "#") return NULL; TreeNode* root = new TreeNode(stoi(str)); root->left = DFS(is), root->right = DFS(is); return root; } // Decodes your encoded data to tree. TreeNode* deserialize(string data) { istringstream is(data); return DFS(is); }};// Your Codec object will be instantiated and called as such:// Codec codec;// codec.deserialize(codec.serialize(root));
- 449. Serialize and Deserialize BST**
- 449. Serialize and Deserialize BST
- 449. Serialize and Deserialize BST
- 449. Serialize and Deserialize BST
- Serialize and Deserialize BST
- LeetCode 449. Serialize and Deserialize BST
- LeetCode 449. Serialize and Deserialize BST
- LeetCode 449. Serialize and Deserialize BST
- 【LeetCode】 449. Serialize and Deserialize BST
- Leetcode-449. Serialize and Deserialize BST
- [leetcode]449. Serialize and Deserialize BST
- LeetCode 449. Serialize and Deserialize BST
- 【Leetcode】449. Serialize and Deserialize BST
- leetcode 449. Serialize and Deserialize BST
- [LeetCode]Serialize and Deserialize BST
- leetcode_middle_32_449. Serialize and Deserialize BST
- Serialize and Deserialize Binary Tree & Serialize and Deserialize BST
- [leetcode] 449. Serialize and Deserialize BST 解题报告
- 如何在Android Studio中创建jniLib和asset文件夹
- 高级算法日记9:图(2)
- 树回归
- ffmpeg编解码详细过程
- 网络游戏服务器断编程学习之多线程
- 449. Serialize and Deserialize BST
- iOS之《Effective Objective-C 2.0》读书笔记(42)
- Java菜鸟学习日记35
- bandit 算法资料大全
- 特定数量的商品如何在高并发下进行库存锁定 ?
- checkbox的全选
- 用户认证
- angular的ng-grid使用中遇到的一些坑
- oracle 数据库提高查询的方法