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

Это видео — лекция Чили об адаптерах контейнеров в 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 Заключение

Иконка канала C++ для всех
4 подписчика
12+
5 просмотров
4 часа назад
12+
5 просмотров
4 часа назад

Это видео — лекция Чили об адаптерах контейнеров в 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 Заключение

, чтобы оставлять комментарии