Scala中Map.clear的时间复杂度

时间:2011-11-30 06:10:18

标签: scala dictionary time-complexity scala-collections

Map上调用时,clear O(1)或O(n)的时间复杂度是否与地图的大小有关?

1 个答案:

答案 0 :(得分:5)

在不可变映射的情况下,由于它们是不可变的,因此它们没有空白,但它们确实为空,它返回该类型的新空映射。因为它只是一个对象创建,所以它是O(1)。然而,可变映射是O(n),其中n基于底层数据结构,因为它们必须清除该数据结构。对于典型的可变HashMap,这将是一个表。表格大小将介于地图过去的最大大小0.75到1.5之间。