题目描述

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

题目很差,没有测试样例。 默认是先序遍历序列化。
class Solution
{public:vector<int> vec;void Ser(TreeNode *pNode){if (!pNode)vec.push_back(0x12345);else{vec.push_back(pNode->val);Ser(pNode->left);Ser(pNode->right);}}TreeNode *Des(int *&p){if (*p == 0x12345){p++;return NULL;}TreeNode *res = new TreeNode(*p);p++;res->left = Des(p);res->right = Des(p);return res;}char *Serialize(TreeNode *root){vec.clear();Ser(root);int *res = new int[vec.size()];for (int i = 0; i < vec.size(); i++)res[i] = vec[i];return (char *)res;}TreeNode *Deserialize(char *str){int *p = (int *)str;return Des(p);}
};

转载于:https://www.cnblogs.com/ruoh3kou/p/10251956.html

[剑指offer] 61. 序列化二叉树相关推荐

  1. 【LeetCode】剑指 Offer 37. 序列化二叉树

    [LeetCode]剑指 Offer 37. 序列化二叉树 文章目录 [LeetCode]剑指 Offer 37. 序列化二叉树 package offer;import java.util.Link ...

  2. 《剑指offer》-- 序列化二叉树、二叉搜索树的第k个节点、数据流中的中位数、滑动窗口的最大值

    一.序列化二叉树: 1.题目: 请实现两个函数,分别用来序列化和反序列化二叉树. 2.解题思路: (1)根据前序遍历规则完成序列化与反序列化.所谓序列化指的是遍历二叉树为字符串:所谓反序列化指的是依据 ...

  3. 剑指 Offer 37. 序列化二叉树

    题目 序列化是将一个数据结构或者对象转换为连续的比特位的操作,进而可以将转换后的数据存储在一个文件或者内存中,同时也可以通过网络传输到另一个计算机环境,采取相反方式重构得到原数据. 请设计一个算法来实 ...

  4. 剑指offe——61序列化二叉树(Python)

    [题目]请实现两个函数,分别用来序列化和反序列化二叉树 二叉树的序列化是指:把一棵二叉树按照某种遍历方式的结果以某种格式保存为字符串,从而使得内存中建立起来的二叉树可以持久保存.序列化可以基于先序.中 ...

  5. 《剑指offer》序列化二叉树

    题目:请实现两个函数,分别用来序列化和反序列化二叉树 解析:首先存储二叉树的先序遍历,遇到null就添加"#," 否则添加"值,".构件二叉树的时候也是用先序遍 ...

  6. 【LeetCode笔记】剑指Offer 37. 序列化二叉树(Java、二叉树、序列化、BFS、队列)

    文章目录 题目描述 思路 && 代码 二刷 题目描述 这道题涉及到不少 String.StringBuilder.Integer的转换.处理. 思路 && 代码 序列化 ...

  7. 【LeetCode】剑指 Offer 07. 重建二叉树

    [LeetCode]剑指 Offer 07. 重建二叉树 文章目录 [LeetCode]剑指 Offer 07. 重建二叉树 package offer;import java.util.ArrayD ...

  8. 【LeetCode】剑指 Offer 68 - II. 二叉树的最近公共祖先

    [LeetCode]剑指 Offer 68 - II. 二叉树的最近公共祖先 文章目录 [LeetCode]剑指 Offer 68 - II. 二叉树的最近公共祖先 一.DFS 一.DFS 祖先的定义 ...

  9. 【LeetCode】剑指 Offer 55 - I. 二叉树的深度

    [LeetCode]剑指 Offer 55 - I. 二叉树的深度 文章目录 [LeetCode]剑指 Offer 55 - I. 二叉树的深度 一.后序遍历(DFS) 二.层序遍历 一.后序遍历(D ...

最新文章

  1. 2021年大数据常用语言Scala(三十四):scala高级用法 异常处理
  2. 关于Tomcat性能监控的第三方工具Probe的简介
  3. java 继承 重载_java – 使用继承的重载方法
  4. vs调试按钮为灰色的_IntelliJ IDEA 调试 Java 8,实在太香了
  5. python进阶:搞懂装饰器和切面编程
  6. html仿qq最小化怎么实现,JS仿QQ好友列表展开、收缩功能(第一篇)
  7. otn系统中常用的电层_自动化系统中常用的液位计
  8. HBase的Row Key设计
  9. Ubuntu系统下ntp服务器搭建
  10. preg_replace在java中_Java相当于PHP的preg_replace_callback
  11. C#笔记 使用自定义事件(含参)
  12. 官网下载JDK1.7的方法和步骤
  13. Notes Ninth Day-渗透攻击-红队-打入内网
  14. jmeter 调试取样器
  15. java mediator_Java 实现中介者(Mediator)模式
  16. VB如何自动保存_发酵鱼饵与果酸、VB小药的搭配,这才是夏季钓大鱼的必杀配方!...
  17. 【博学谷学习记录】超强总结,用心分享 | 产品经理必备技能之Axure RP9(持续更新)
  18. 美国计算机科学专业学校排名,美国计算机科学专业排名
  19. AI英雄 | 八问机器学习泰斗Jordan教授:AI其实并不神奇
  20. 阿里巴巴张勇谈商业文明:让更多小草能长成参天大树

热门文章

  1. 【3D游戏建模】3D建模师的发展前景
  2. 字节跳动 2022 校园招聘研发提前批正式启动!
  3. 重磅开源 | 机器学习圣经《模式识别与机器学习》中文版PDF!
  4. 收藏 | Yann Lecun纽约大学《深度学习》2020课程笔记中文版
  5. HALCON学习之旅(三)
  6. windows下使用word2vec训练维基百科中文语料全攻略!(二)
  7. 请不要把数据分析和机器学习混为一谈
  8. 机器学习(十一)谱聚类算法
  9. LQR轨迹跟踪算法Python算法实现3
  10. mysql 加随机数,如何插入随机数MySql