当然,我知道arraylist和linkedlist的性能差异。我自己进行了测试,发现对于一个非常大的列表,arraylist 和linkedlist 之间的插入/删除和迭代在时间和内存方面存在巨大差异。
(如果我错了,请纠正我)我们通常更喜欢 arraylist 而不是linkedlist,因为:
1)我们实际上比插入/删除更频繁地进行迭代。所以我们更喜欢迭代比插入/删除更快。
2)linkedlist的内存开销远大于arraylist
3)我们无法在批量插入/删除时将列表定义为linkedlist,在迭代时定义为arraylist。这是因为arraylist 和linkedlist 具有根本不同的数据存储技术。
我对第三点错了吗[我希望如此:)]?是否有可能在一个列表中获得这两种数据结构的好处?我想,数据结构设计者一定已经考虑过了。