Когда выбрать vector, а когда list?
Ответ:
std::vector обычно выбирают по умолчанию: он компактен, cache-friendly и быстро итерируется. std::list нужен редко: когда важны стабильные итераторы и частые вставки/удаления в середине при уже найденной позиции. Ошибка: выбирать list только потому, что “удаление O(1)”, игнорируя cache locality.