Если я добавляю неизвестное количество элементов в список, и этот список будет только итерации, будет ли LinkedList лучше, чем ArrayList в конкретном экземпляре (с использованием Java, если это имеет какое-либо значение)
Использование LinkedList или ArrayList для итерации
Ответ 1
Коммуникации производительности между ArrayList
и LinkedList
обсуждались до, но вкратце: ArrayList
имеет тенденцию быть более быстрым для большинства приложений реального времени, сценарии использования. ArrayList
приведет к меньшему фрагментации памяти и будет играть лучше с Garbage Collector, он будет использовать меньше памяти и позволит ускорить итерацию, и она будет быстрее для вставок, которые происходят в конце списка.
Итак, до тех пор, пока в последней позиции всегда появляются вставки в списке, нет причин для выбора LinkedList
- ArrayList
- это явный победитель.
Ответ 2
Для итерации оба будут иметь одинаковую сложность O (n) при итерации, ArrayList будет потреблять меньше памяти BTW.