首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >数据结构中的数据持久化和还原

数据结构中的数据持久化和还原
EN

Stack Overflow用户
提问于 2018-08-28 06:45:25
回答 1查看 68关注 0票数 0

我对数据结构很陌生,并且了解到数据结构(如列表、堆栈、队列、树等)应该在内存中访问,还有关于如何在数据库中持久化数据结构的几点建议

因此,问题是:

  1. 要持久化数据结构,必须以一种最有效的方式将数据结构分解并保存到数据库中,以便以后进行结构调整?
  2. 要恢复数据结构的数据,必须从数据库中读取数据,然后在系统重新启动/失败后恢复数据结构。
  3. 这是一种常见的做法,还是有一种适当的方法可以防止数据结构的重构(因为它们消耗了计算能力)?
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-08-28 14:10:42

  1. 它依赖于诸如列表、堆栈、队列、树等结构的数据结构。它们通常用指针(指向下一个节点的指针、指向子节点的指针等)实现。 这些仅存在于内存中的指针包含有关数据结构的信息,因此需要一种有效的方法来转换此结构信息。 例如,签出leetcode上的树序列化: https://leetcode.com/faq/#binary-tree 对于可以在没有指针(如字符串、二进制堆等)的连续内存段中实现的数据结构,您不需要这个过程,只需将内存段的位保存在数据库中即可。
  2. 是的,这是非常普遍的做法,历史上XML一直是这种格式的选择,JSON是最近流行的,很多服务通过在数据库中获取持久化的XML数据,在内存中构建数据结构,执行一些操作,然后保存结果。

如果你仔细想想,整个网络都是这样工作的:模型

每个HTML页面实际上都是一个序列化的树数据结构,它通过浏览器在内存中重建。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52051655

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档