Scala的mutable.LinkedList追加

时间:2014-03-03 11:25:29

标签: scala

来自消息来源:

  

如果this为空,则不执行任何操作并返回that

有一些问题,作者要求如何附加到LinkedList,但我没有找到,为什么 LinkedList设计有这样的行为。

还有一个问题,Scala是否有任何带有添加/追加的列表(使用O(1)更改this)和地图操作?

1 个答案:

答案 0 :(得分:1)

如果您在mutable LinkedList API doc中展开附加文档,那么有更多内容可以解释附加的O(n)性能:

def append(that: LinkedList[A]): LinkedList[A]
  

如果这是空的,那么它什么也不做,然后返回。除此以外,   将此追加到此。追加要求完全遍历这一点。

追加需要一秒LinkedListthat)并将其追加到当前的this。如果当前LinkedList为空,则将第二个LinkedList附加到空LinkedList的结果只是第二个{{1}}。

我可能误解了你的问题,但我认为这不会引起争议或需要特别的设计决定。

至于scala集合操作的性能特征,我不确定是否有更新的东西,但我总是指向to this doc