*Cамый лучший способ сказать "спасибо" - поставить лайк и и поделиться уроком с друзьями. Это очень мотивирует создавать полезные уроки =)*
@andreyshein48556 жыл бұрын
Если кому интересно, то, чтобы изменить критерий приоритета, нужно использовать greater из библиотеки functional. Вот пример: priority_queue q;
@ProtoConstructor3 жыл бұрын
Очередь с приоритетом можно сравнить с очередью к врачу в поликлинике. Вроде бы каждый из пришедших занял своё место, но время от времени появляются более приоритетные личности которым просто спросить или справочку занести. Ну это моё сравнение... Сергей, спасибо Вам за такие ёмкие уроки!!!
@ImyaFamiliya646894 ай бұрын
Точно
@ДмитрийБузницкий-б3н Жыл бұрын
Сергей, благодарю за урок! Как всегда понятно и интересно!
@andrewbistroff75586 жыл бұрын
Сергей спасибо за Лучшие уроки, продолжайте выпускать шедевры!
@ИринаИрина-ш5ы7р Жыл бұрын
Всё понятно,очень интересно!
@hiddencat3785 Жыл бұрын
пока смотрел, придумал аналогию: толпа спортсменов с номерами на спине увидела ларек с водой и выстроилась в очередь. На номера никто не смотрит, это queue. Толпа покупателей стояла за модным товаром, товар закончился, каждому выдали номерок (начали считать с хвоста). На следующий день все (или не все) вернулись к магазину до открытия, обслуживать начали с покупателя с самым большим номером. Это priority_queue. 😊
@kazikhangereykhanov77586 жыл бұрын
Спасибо за все
@segars96047 ай бұрын
Спасибо за бесценный труд!)
@artlinestudio67353 жыл бұрын
Хороший урок. Нужный! Спасибо, было очень интересно и не скучно! Просим продолжения уроков по С++. Пожалуйста.
@andreyzavalishchev48186 жыл бұрын
Большое спасибо за отличные уроки!
@Ermine8826 жыл бұрын
Спасибо за урок.
@saharook51626 жыл бұрын
Блин чувак, под каждым уроком пишешь)
@concorde3536 Жыл бұрын
@@saharook5162 А в чем проблема поблагодарить, если урок реально понравился и полезен?
@serhiyhrytsiuk43766 жыл бұрын
и это топовый канал! Спасибо
@sashatim82446 жыл бұрын
Как обычно все на высоте. Спасибо!
@HugoBossKosta2 жыл бұрын
спасибо большое за ценные уроки!)
@Antonov_Ivan.10 ай бұрын
Спасибо за урок!
@dsq_malon6 жыл бұрын
Величезне тобі спасибі за уроки! Давно закинув, але тепер починаю з нуля все. Не розумію чому такий хороший канал із доступним достойним контентом, якому нема конкурентів на ютубі по якості уроків не набрав ще 100К... SAD
Жалко, что не показали, как можно менять приоритет у priority_queue.
@couscousburify6 жыл бұрын
Спасибо за урок ! . Можете Сделать видео про [Merge Sort]. Просто ваши уроки понятнее остальных :)
@АндрейБогданов-я6б4 жыл бұрын
Здраствуйте , Сергей! Не знаю , увидете ли вы этот комментарий , но у меня возник достаточно серьезный вопрос относительно метода _Get_container(); Дело в том , что этот метод определен исключительно в Visual Studio и , при моей попытке скомпилировать в любом другом IDE увенчался провалом. Читал много информации и , в итоге , мне объяснили , что этот метод является undefined behaviour и его категорически нельзя использовать. Очень надеюсь увидеть Ваш комментарий по этому поводу. Очень благодарен Вам за труд !
@МаркКазино4 жыл бұрын
У меня Вижла этот метод вообще почему-то не видит :/
@АндрейБогданов-я6б4 жыл бұрын
@@МаркКазино так это внутренний метод VS , а когда ты используешь в коде методы , которые уникальны для одного компилятора - это undefined behaviour и так делать нельзя
@poghosyanrobert2 жыл бұрын
Оу, незнал Спасибо за информацию
@ЯрославГоловко-ф6и4 жыл бұрын
спасибо
@PanVladyslav6 жыл бұрын
интересно , спасибо )
@shaa81936 жыл бұрын
12:46 так тихо)
@CLywaTeLb4 жыл бұрын
Прежде всего, благодарен автору, за столь понятные, простые о сложном, уроки. В этой теме кое -что таки не заработало и найти решение не получается. Нет метода _Get_container ни для одного из адаптеров. У меня Microsoft Visual Studio Community 2019 Версия 16.5.4. Очередное обновление было буквально на днях (17.04.2020). Радует то, что создавая объект адаптера воспринимает варианты, какой контейнер выбрать (list, deque или vector). Но создать объект контейнера связанного с адаптером нет возможности, поэтому нет расширенных возможностей влезть в середину стека или в очередь без очереди ;). Этот метод отсутствует в моей версии VS за ненадобностью или версия не та? Насколько вероятен случай того, что придётся самому пилить необходимые стек или очередь с нужными методами?
@alexandrmelnikov64344 жыл бұрын
Да, видимо компилятор не поддерживает теперь этот метод. Разработчики убрали.))) Что же делать? Нужно писать код так, что бы не нужно было использовать "нижележащий контейнер". Возможно, нужно просто использовать vector или deque.
@oljaolsa72614 жыл бұрын
@@alexandrmelnikov6434 якщо вибрати контейнер наприклад вектор : priority_queue prq; то появляється метод prq.top()
@Vlad_Logvin4 жыл бұрын
Я тоже искал инфу по этому поводу. Насколько я понял, что теперь в классах адаптеров контейнера он находится в секции protected. И теперь он называется не "_Get_container", а "c". Можно унаследовать от класса адаптера и затем создавать свои методы класса, также и _get_container можно сделать
@Vlad_Logvin4 жыл бұрын
template class Stack : public stack { public: using stack::c; }; int main() { Stack st; st.push(24); st.push(98); st.push(7); auto a = st.c; cout
@stensej68414 жыл бұрын
@@Vlad_Logvin auto a = st.c; выдает ошибку :(
@sergeykirdyankin7027 Жыл бұрын
может ли очередь быть элементом синхронизации? Например в FreeRTOS (Embeded С) поток можно усыпить до получения данных из очереди
@lovxxs Жыл бұрын
15:04 Не понял, сначала у очереди с приоритетом нет в основе контейнера, потом там по умолчанию вектор. Не пойму, что? Может кто обьяснить, пожалуйста?
@truehollow21313 жыл бұрын
В VS_2019 в отладчике priority_queue не отображает сортировку от большего к меньшему. А при извлечении элементов они уже отсортированы. Странно, в общем =)
@lovxxs Жыл бұрын
Да, nоже заметил, что в отладчике они находятся в какой-то куче c. В этой куче они не отсортированы. Но когда их выводишь, они отсортированы от большего к меньшему.
@lovxxs Жыл бұрын
Еще посмотрел вывод их через отладчик, они так выводятся, походу, потому что в самом контейнере реализована такая логика, что они сравниваются между собой, прежде чем вывести top(), и самый большой элемент меняется местами с головой очереди(если он сам не голова), и затем вывод идет по такой логике. Походу, приоритетность распространяется только на вывод, но не отладчик.
@yrikfirex_zxv16644 жыл бұрын
топпппппппппппппппппппппппппп
@andreygardenerSadovnikov6 жыл бұрын
Здравствуйте Сергей! У меня возник вопрос по queue. Для чего может пригодиться изменение базового контейнера с deque на list? Есть ли какие скоростные изменения в работе очереди в случае базового контейнера deque или list? Спасибо!
@vladportnov30415 жыл бұрын
доступ к элементам быстрее у дека, а удаление/добавление быстрее у списка
@postdisc0 Жыл бұрын
а нельзя приоритет выстраивать по-другому? чтобы как в видео про очередь с приоритетом - первый, второй и третий только?
@Get_Boros Жыл бұрын
Если правильно понял то можно: Результат вывода будет: 15 23 67 99 а не 99 67 32 15 priority_queue prior_que; prior_que.emplace(23); prior_que.emplace(15); prior_que.emplace(99); prior_que.emplace(67); while (!prior_que.empty() ) { cout
@JohnWickMovie6 жыл бұрын
Давай уроки для продвинутых тип реализацию vector, array, map, list, queue, stack, string на small buffer optimization.
@memorylearn85664 жыл бұрын
+
@user-vladislav7 Жыл бұрын
За 5 лет до этого урока дошло лишь 2,6% людей. 39 из 40 не дошло.
@kelvin744710 ай бұрын
2,6% - легенды
@user-vladislav710 ай бұрын
@@kelvin7447 тоже все посмотрел?
@kelvin744710 ай бұрын
@@user-vladislav7 десяток остался еще
@aabb-ol5xg Жыл бұрын
Бесполезный урок, самые важные особенности не раскрыты в видео
@lovxxs Жыл бұрын
Почему? Если нашел видео с подробностями или сайт, скинь , пожалуйста.
@aabb-ol5xg Жыл бұрын
@@lovxxs потому что в проектах не всегда будет такая ситуация, где нужно использовать очередь от встроенных типов, например . А если захочешь использовать очередь с собственным классом, тогда сортировка работать не будет, для этого нужно перегрузить оператор сравнения и передать его при объявлении очереди. Погугли про custom comparator priority_queue, на ютубе было пару роликов, которые объясняют как это делать, но на английском