LinkedList считается более эффективным для работы с серединой списка, чем ArrayList, потому что в нём проще выполнять вставку и удаление элементов. 2
Это связано с тем, что LinkedList — это двусвязный список, состоящий из узлов, каждый из которых содержит ссылку на следующий и предыдущий узел в списке. 1 При вставке или удалении элемента в LinkedList просто переопределяются ссылки соседних элементов, а ненужный элемент «выпадает» из цепочки ссылок. 2 В то время как в ArrayList при вставке или удалении элемента в середине списка приходится сдвигать все последующие элементы. 12
Однако доступ к элементам в LinkedList медленнее, так как требуется последовательное прохождение от начала или конца списка до нужного элемента. 1