相关疑难解决方法(0)

不可变的数据结构性能

我不知道作为一个集合的东西如何是不可变的并且仍然具有可接受的性能.

从我在F#集中读到的内部使用红黑树作为它们的实现.如果每次我们想要为Red Black Tree添加新内容,我们必须基本上重新创建它,它如何才能获得良好的性能?我在这里错过了什么?

虽然我问F#的集合,但我认为这与任何其他拥有或使用不可变数据结构的语言相关.

谢谢

.net f# functional-programming immutability data-structures

35
推荐指数
4
解决办法
3303
查看次数

是否已知索引链表的实现?

我的直觉告诉我没有好办法实现这一目标,但是,与Stephen Colbert先生不同,我宁愿相信一个开发者社区而不是我的直觉......

有没有一种已知的方法来有效地实现"两个世界中最好的"列表,一个通过索引提供随机访问并且像链接列表一样提供O(1)插入/删除?

我预见到两种可能的结果:要么"不,这是不可能的,出于以下明显的原因......"或"呃,是的,这已经完成了;请看这里,这里和这里."

language-agnostic indexing linked-list list

15
推荐指数
1
解决办法
1万
查看次数

使用阿克曼函数?

在我大学的离散数学课程中,教师向学生展示Ackermann功能,并指导学生在纸上开发功能.

除了作为递归优化的基准之外,Ackermann函数是否有任何实际用途?

algorithm math complexity-theory discrete-mathematics

10
推荐指数
2
解决办法
7401
查看次数