Лекции в бакалавриате МФТИ по C++ на русском языке.
На этой лекции в основном рассматриваются ассоциативные контейнеры: множества, отображения и мультимножества. Мы узнаем какие бывают варианты unordered_map, почему стандартная реализована именно так, что такое порядок в контейнерах и зачем он нужен. Завершается лекция коротким обзором лямбд с захватом.
Лектор: Константин Владимиров
Дата лекции: 4 апреля 2022 года
Съёмка: Владислав Белов.
Звук: Дмитрий Рябцев.
Предыдущая лекция:
https://youtu.be/zEP7KRc2t3k
Следующая лекция:
https://youtu.be/ZQ6-EoBP02Q
Слайды ко всем лекциям: https://sourceforge.net/projects/cpp-lects-rus/files/cpp-graduate
Примеры кода ко всем лекциям: https://github.com/tilir/cpp-graduate
Timeline:
00:00 Ассоциативные контейнеры
04:50 Ментальная модель хеша
17:35 Оптимизации хеш-таблиц
25:00 Открытая адресация
35:10 Квадартные скобки
41:20 Множества и группы
48:15 Мультимножества
54:20 Упорядоченные множества
1:10:26 Литература по ассоциативным контейнерам
1:14:10 Функторы
1:22:00 Захват контекста
Errata:
*
37:00 "...emplace возвращает итератор и признак. Если признак – false, то итератор невалидный". Нет, это не так. Итератор всегда валидный, и указывает либо на вновь созданный элемент, либо на элемент, который уже был в мапе.