4

为什么没有任何实现(在 C、C++、Java 甚至 Python 中......)完全持久(不一定是功能性)链表在修改次数上具有恒定的时间/空间开销?

我想到的数据结构是本文中描述的数据结构: http ://www.cs.cmu.edu/~sleator/papers/Persistence.htm

在谷歌上进行了长时间的搜索后,我什至找不到一个部分持久的链表实现,上面的开销位于上面。

PS:我所说的持久性的定义是在以下维基百科页面中描述的: http ://en.wikipedia.org/wiki/Persistent_data_structure

编辑(问题被搁置后):

我认为上述原因不适用于我的问题。我并不完全要求在不同的可用库之间进行推荐,因此不能有“有意见的答案和垃圾邮件”。我的问题有点令人惊讶,一个理论上应该很好的数据结构却没有被任何已知的语言实现。所以在我自己实现它之前,我问了这个问题,看看是否有这样的答案:“这很正常,数据结构 X 支配着你正在寻找的那个,这就是为什么尽管它很简单但它没有被实现”。另一个答案可能是“它没有你想象的那么好,因为有一个很大的隐藏常数”或“它不适合现在构建缓存的方式”......如果我的问题不够清楚,我很抱歉。

4

1 回答 1

1

Have you tried Functional Java library? It got some persistent data structures:

http://www.functionaljava.org/features.html

于 2015-04-20T12:11:22.650 回答