2
假设我只是删除一个元素。我想这些方法实现一个固定大小的ListBuffer。我只会在O(1)次运行时使用。这个文档有点含糊不清,有人知道实现细节吗?在Scala中,ListBuffer的trimStart和trimEnd的运行时间是多少?
假设我只是删除一个元素。我想这些方法实现一个固定大小的ListBuffer。我只会在O(1)次运行时使用。这个文档有点含糊不清,有人知道实现细节吗?在Scala中,ListBuffer的trimStart和trimEnd的运行时间是多少?
相关实现是there (for ListBuffer
)和there (for BufferLike
)。
trimStart(n)
相对于n
是线性的(因此,如果您移除单个元素,则为常数); trimEnd(n)
相对于集合的大小是线性的。
除此之外,我看不出你如何想有一个固定大小的,你改变这样的trim
方法大小ListBuffer
...
从那里删除?开始?结束?指数?按元素任意? –