dev*_*ium 4 c# java data-structures
我需要一个具有以下要求的数据结构:
我倾向于使用ArrayList.在这种情况下,它似乎是O(1)读取元素(它们总是?),删除元素(我只需要在列表的末尾删除它们)和添加(我只添加到列表的末尾).
只有一个问题是,当ArrayList完全填满并且我需要向它添加更多元素时,ArrayList会不时地产生性能损失.
还有其他更好的主意吗?我没有想到一个能够击败ArrayList这里的数据结构.
谢谢
听起来不错,不过在C#中你应该使用a List<T>.这是Java的等价物ArrayList<E>.ArrayListC#中的类不是通用的,基本上被新List<T>类废弃了.
只有一个问题是,当ArrayList完全填满并且我需要添加更多元素时,它会不时地产生性能损失.
这可能不会是一个问题,你可能不应该担心它,除非你的性能分析.但是,如果您事先知道(或可以猜测)列表将包含的元素数量,则可以将其Capacity设置为该值(ensureCapacity在Java中).这将使列表提前保留所需的内存.您还可以使用两种 语言为列表构造函数提供容量.
| 归档时间: |
|
| 查看次数: |
359 次 |
| 最近记录: |