Город МОСКОВСКИЙ
00:09:00

#14 C++ Жемчужины STD - Адаптеры контейнеров priority_queue

Аватар
C++ для всех
Просмотры:
5
Дата загрузки:
30.06.2026 22:19
Длительность:
00:09:00
Категория:
Обучение

Описание

Это видео — лекция Чили об адаптерах контейнеров в C++.

00:17 Что такое адаптеры контейнеров
-Адаптеры контейнеров — это обёртки вокруг контейнеров последовательности,
которые предоставляют другой, зачастую ограниченный интерфейс.
Например, stack позволяет только нажимать, добавлять и просматривать верхнюю часть стека — в отличие от vector,
где есть больше возможностей.

01:45 Особенности работы адаптеров
Адаптеры могут работать с разными типами контейнеров. Стек по умолчанию использует двусторонней очередью dequeue,
но его можно настроить на работу с vector.
При этом доступ к базовому контейнеру защищён — получить его можно,
только если наследовать от stack.

03:01 Отличия очереди и стека
-Очередь работает по принципу «первый вошёл — первый вышел»: элементы добавляют в конец, а удаляют из начала.
-Для очереди подходят не все контейнеры — например, vector не годится, потому что из него нельзя удалять элементы с начала.
-Оптимальные варианты — колода или список.

03:37 Приоритетная очередь
-Приоритетная очередь — это оболочка для контейнера последовательности, которая управляет им как приоритетной очередью с помощью операций с кучей.
-Её особенности: верхний элемент всегда имеет наивысший (или наименьший — в зависимости от настройки) приоритет и pop удаляет элемент с наивысшим приоритетом.

04:40 Пример применения — игровой симулятор, где действия с разными задержками помещают в очередь расписания. Когда время действия совпадает с запланированной отметкой, оно выполняется.

06:04 Практическое применение
-Приоритетные очереди используют не только в играх — например, они лежат в основе алгоритма A‑star.
-Автор видео реализовал A‑star с приоритетной очередью и пользовательским типом данных vector, и алгоритм сработал успешно.

08:19 Заключение

Рекомендуемые видео