Сопоставление Middle Коллекции и LINQ обновлено

Сложность операций коллекций

Вопрос

Сопоставьте операцию и её типичную сложность.

Попробуйте сами

Нажмите слева, потом подходящее справа.

Показать ответ и разбор

Коротко

Индекс в массиве прямой. Вставка в начало сдвигает все элементы.

Правильные пары

List<T>[i]
O(1)
List<T>.Insert(0, x)
O(n)
SortedDictionary.Add
O(log n)
List<T>.Sort()
O(n log n)
List<T>.Contains
O(n) линейный поиск

Разбор

Индекс в массиве прямой. Вставка в начало сдвигает все элементы. SortedDictionary это красно-чёрное дерево. Sort это интроспективная сортировка. Contains у списка перебирает элементы, для частых проверок нужен HashSet.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.