Java LinkedList
Не могу себе представить более странную структуру данных, чем LinkedList. С одной стороны очевидно должны существовать ситуации в которых она показывает производительность лучшую чем у ArrayList. Однако найти такой кейс оказывается сложно. Хотя многие уверены, что он есть и активно минусуют ответ LinkedList - отстой.
Я надеялся, что хотя бы добавление в начала списка работает быстрее в случае LinkedList, но по ходу и это не так.
Benchmark Mode Cnt Score Error Units
ListBenchmark.testArrayList thrpt 5 6260.096 ± 3249.035 ops/s
ListBenchmark.testLinkedList thrpt 5 4.953 ± 1.743 ops/s
Хотя, мой тест показывает только как драматично падает производительность при постоянном срабатывании GC. Если же удалять перед добавлением, то получатся более похожие на правду результаты:
Benchmark Mode Cnt Score Error Units
ListBenchmark.testArrayList thrpt 5 22450.002 ± 8560.238 ops/s
ListBenchmark.testLinkedList thrpt 5 57681435.183 ± 28196927.137 ops/s