Встречается на 12% собеседований по C#

Какие плюсы и минусы List

Плюсы List<T>:

  • Динамически изменяемый размер (не нужно указывать capacity заранее)
  • Быстрый доступ по индексу (O(1))
  • Поддержка LINQ и удобных методов (Add, Remove, Find и т.д.)
  • Автоматическое увеличение capacity при необходимости
  • Поддержка foreach и IEnumerable<T>

Минусы List<T>:

  • Вставка/удаление в середину списка медленные (O(n))
  • При увеличении capacity происходит переаллокация массива
  • Неоптимален для частых вставок/удалений (лучше LinkedList<T>)
  • Занимает больше памяти, чем массив (из-за overhead структуры)
csharp
var list = new List<int> { 1, 2, 3 };
list.Add(4); // Быстро (если есть capacity)
list.Insert(0, 0); // Медленно - сдвигает все элементы

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы