当前位置: 首页> 教育> 大学 > 传奇手游发布网址传奇_安徽专业网站制作公司_抖音引流推广免费软件app_企业策划推广公司

传奇手游发布网址传奇_安徽专业网站制作公司_抖音引流推广免费软件app_企业策划推广公司

时间:2025/7/22 21:43:10来源:https://blog.csdn.net/fks143/article/details/144786859 浏览次数:0次
传奇手游发布网址传奇_安徽专业网站制作公司_抖音引流推广免费软件app_企业策划推广公司

题目:297. 二叉树的序列化与反序列化 - 力扣(LeetCode)

宽度有限搜索的具象化,没啥难度,注意二叉树中空节点的处理即可。

class Codec {
public:// Encodes a tree to a single string.string serialize(TreeNode* root) {if (root == nullptr) {return "[]";}vector<TreeNode*> arr;arr.push_back(root);int i = 0;while (i < arr.size()) {TreeNode* t = arr[i];i++;if (!t) {continue;}arr.push_back(t->left);arr.push_back(t->right);}while (arr.size() && arr[arr.size() - 1] == nullptr) {arr.pop_back();}string data = "[";for (i = 0; i < arr.size(); i++) {if (!arr[i]) {data += "null";} else {data += to_string(arr[i]->val);}if (i < arr.size() - 1) {data += ",";} else {data += "]";}}return data;}// Decodes your encoded data to tree.TreeNode* deserialize(string data) {vector<TreeNode*> arr;int i = 1;int end = data.length() - 2;bool neg;int val = 0;while (i <= end) {if (data[i] == 'n') {arr.push_back(nullptr);i += 5;continue;}neg = false;if (data[i] == '-') {neg = true;i++;}val = 0;while (i <= end && data[i] != ',') {val = val * 10 + data[i] - '0';i++;}if (neg) {val = - val;}TreeNode* t = new TreeNode(val);arr.push_back(t);i++;}if (arr.empty()) {return nullptr;}int pid = 0;TreeNode* parent;for (int i = 1; i < arr.size(); i++) {parent = arr[pid];if (i % 2 == 1) {parent->left = arr[i];} else {parent->right = arr[i];pid++;while (!arr[pid]) {pid++;}}}return arr[0];}
};

关键字:传奇手游发布网址传奇_安徽专业网站制作公司_抖音引流推广免费软件app_企业策划推广公司

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: