【发布时间】:2010-12-07 00:43:02
【问题描述】:
我正在学习 Haskell。我有下一个问题:
List 类型是 Haskell 中的基本类型。 Haskell 中的数组是基于列表的。这是索引 [Ix a] 的列表和按表格呈现的函数 - 对列表 [(Ix a,Value)]。如果数组内部使用列表,为什么数组比列表快?
【问题讨论】:
-
哪些操作更快?你怎么知道它更快?
-
例如添加到 (array/list) 的末尾,或者获取 i 元素。
-
Data.Array和Data.List都需要“复制所有内容”才能添加到(数组/列表)的末尾。 -
是的,
Data.Array.MArray有固定的界限。如果你想改变元素的数量,你必须创建一个新数组。
标签: arrays performance list data-structures haskell