有没有人知道什么是最简单的渐近减速,当编程纯粹功能而不是命令性(即允许副作用)时可能发生?
来自itowlson评论的澄清:有没有哪个问题最着名的非破坏性算法渐渐比最着名的破坏性算法更糟糕,如果是这样的话多少呢?
我在Haskell中寻找一种支持快速索引和快速追加的数据结构.这是针对由递归引起的memoization问题.
从矢量在c ++中工作的方式(这是可变的,但在这种情况下应该无关紧要)它似乎是不可变的向量与(摊销)O(1)追加和O(1)索引应该是可能的(好吧,它不是,看到这个问题的评论).这在Haskell中是不可能的,还是应该使用Data.Sequence,它有(AFAICT无论如何)O(1)追加和O(log(min(i,ni)))索引?
在一个相关的说明中,作为一个Haskell新手,我发现自己渴望一个实用,简洁的Haskell数据结构指南.理想情况下,这将对最实用的数据结构以及性能特征和指向Haskell库的指针进行相当全面的概述.似乎有很多信息,但我发现它有点分散.我问得太多了吗?