如何在数据库中存储堆栈或长数组?

时间:2012-12-27 10:02:36

标签: database algorithm data-structures stack tree-traversal

我正在实现一个深度优先的树遍历代码一棵大树。由于每个节点的处理时间较长,系统可能会崩溃或关闭,因此单个遍历过程可能会持续数天。

因此,如果过程因某种原因停止,我想让整个过程可以恢复。出于这个原因,我计划使整个过程由持久性数据存储区支持,该数据存储区实质上存储了进程的状态。

我发现,对于深度优先遍历,我需要一种Stack类型的数据结构,并且可以通过链表类型的数组实现来实现。所以我的问题是,是否有一些数据存储区提供了持久化大型数组以维持实体的顺序以表示它的堆栈的能力。或者,如果还有其他方法可以在持久存储中维护遍历的状态。

感谢。

1 个答案:

答案 0 :(得分:0)

恕我直言:您可以使用链接列表实现自定义类的堆栈行为。此自定义类应该是可序列化的。间歇性地存储对象的状态。因此,即使系统崩溃,您也会丢失一些数据并通过从持久存储中反序列化对象来重新创建完整的结构。