Глупости. O (n) никогда не будет биться постоянно. Любое использование списков, необходимых для корректной работы с вставками с сохраненными итераторами, будет использовать связанные списки. Они являются фундаментальной структурой и не исчезнут.
Я бы включил аргумент в другую сторону: связанные списки в наши дни более приемлемы. На 386 вы должны быть осторожны с производительностью, но теперь мы пишем программы на Python даже и смиряем их скорость. Из количества кода, написанного на языках, которые используют виртуальную машину (или интерпретируются), я считаю справедливым сказать, что многие люди не находятся на уровне беспокойства о недостатках кэша в выборе структуры данных.
У нас быстрые процессоры сейчас, поэтому часто не нужно беспокоиться о нескольких дополнительных инструкциях, которые могут потребоваться при реализации наших структур данных. Мы можем взглянуть на то, что мы используем, выработать то, что у нас есть, и выбрать наши структуры на основе их асимптотических характеристик. Это также делает код более удобным для обслуживания: вам не придется менять код, если вы обнаружите через шесть месяцев, что для n = 100 список будет быстрее. Профилирование - это тяжелая работа, поэтому мы должны быть очень удобны в дни загрузки процессора, чтобы выбрать структуру с алгоритмическими свойствами, которые мы хотим, а не гадать на векторе.
Я боюсь, что даже с технологическими достижениями вставка/удаление в массивах по-прежнему не может выполняться в постоянное время. Итак, нет. –
Да, аргументы сохраняются. Но привязанные списки все еще используют их. – Joni
Ядро linux использует связанные списки ** широко **, а также делает много другого программного обеспечения. Итак, да, уместно. –