引用消息来源:
如果
this是空的,那么它什么也不做,并返回that。
在一些问题中,作者问是如何附加到LinkedList中的,但我没有发现,为什么 LinkedList是用这种行为设计的。
还有一个问题,Scala有添加/追加列表(它用O(1)来更改this )和映射操作吗?
发布于 2014-03-03 11:36:56
如果您扩展了可变LinkedList API文档中追加的文档,那么就有更少的东西解释了追加的O(n)性能:
def append(that: LinkedList[A]): LinkedList[A]如果这是空的,那么它什么也不做,并返回那个。否则,将其追加到此。追加要求对此进行全面遍历。
append获取第二个LinkedList (that),并将其附加到当前的this中。如果当前的LinkedList是空的,那么向空LinkedList追加第二个LinkedList的结果就是第二个LinkedList。
我可能误解了你的问题,但我不认为这可能是有争议的,或需要特定的设计决策。
至于scala集合上操作的性能特性,我不确定是否有新的操作,但我总是指向敬这位医生。
https://stackoverflow.com/questions/22145540
复制相似问题