这是449.序列化和返回序列化的二进制搜索树,这很困难。
标签:“前遍历”,“ BST”
序列化是将数据结构或对象转换为一系列位置的过程,因此可以将其存储在文件或内存缓冲区中,或通过网络连接链接传输到以后在同一或其他计算机环境中进行重建。
设计一种算法以序列化和停止序列化二进制搜索树。对序列化/deepertdial algorith的工作方法无限制。最初的二进制搜索树。
编码的字符串应尽可能紧凑。
示例1:
示例2:
暗示:
在实施方面,我们可以忽略“ BST”的条件,而是使用“ BFS”或“直接充当完整的二进制树”来序列化和衍生。
但是,由于积分的数量为$ 14 $,因此最坏的情况是,当BST成为链条时,会有更大的空间浪费。
因此,一种相对紧凑的序列化/反序列化方法是使用“初步遍历 + BST特征”:
代码:
这是我们“通过Leetcode”系列的第一篇文章。该系列始于2021/01/01。从开始开始时的起始代码开始,总共有1916年的问题。该主题已经完成。
在这一系列文章中,除了解释问题 - 解决想法之外,还将尽可能多地提供最简洁的代码。如果涉及通信,将有相应的代码模板。
为了使学生更容易在计算机上调试和提交代码,我建立了一个相关的仓库:https://github.com/sharingsource/logicstack-letcode。
在仓库地址中,您可以看到一系列文章的解释链接,一系列文章的相应代码,leetcode的原始链接以及其他首选解决方案。
原始:https://juejin.cn/post/709631324357904398