Информатика. Структуры данных: Куча (heap). Центр онлайн-обучения «Фоксфорд»

preview_player
Показать описание

Подготовиться к ЕГЭ и ОГЭ, затащить олимпиаду, исправить оценки, найти хобби и узнать много нового: любая цель достижима вместе с «Фоксфордом». Вам помогут опытные преподаватели — объяснят даже самую скучную тему так, чтобы вы не зевали и точно всё поняли.
Рекомендации по теме
Комментарии
Автор

Классно. Спасибо, немного троллит "он-лайн школа с 3 по 11 класс". А мне скоро тридцатник.

AndreyDeveloper
Автор

целый семестр препод в универе преподавала кучу, но толком не могла объяснить тему. Спасибо, за 9 минут вы объяснили семестровую тему ...

__-ghbd
Автор

Лайк однозначно! После этого видео я сам написал кучу на Паскале(на С++ есть же готовая priority_queue).

multithread_cat
Автор

Спасибо, самое лучшее объяснение этой темы из всех, что я встречал.

andyanderson
Автор

Спасибо за видео, но не сказано откуда мы знаем куда вставлять новый элемент, а если нет вакантного места у узла 17? Также откуда мы знаем какой узел минимальный, который поднимали после удаления корня

grigory
Автор

Теперь осталось понять зачем мне эта информация.

gromitwoll
Автор

в целом все правильно и понятно, но вот только забыли дать формулы для нахождения дочерних и родительского элементов в кучи

ghsqpso
Автор

Всякая куча является бинарным деревом?

alexhali
Автор

Видео 5ти летней давности... Чем я занимался в 12 лет?( чтож никто не погнал меня на этот канал?((

gylgvpi
Автор

вставка и удаление просиходит по принципу взятому из алгоритма всплытия флойда

pqqejfy
Автор

Скажите, пожалуйста, зачем использовать кучу вместо отсортированного массива? Там те же операции с той же асимптотикой

alexanderkhoroshavin
Автор

Как же задрало когда при преподавании программирования препод всё пускает по одному месту. Тупо из-за оговорок, опечаток. Вот слушаешь и вроде бы всё понятно. Вот только понятно, когда уже в этом хоть как-то шариш. И вот так вот смотришь эти "клёвые" ролики и вроде бы всё понятно, а в башке потом либо в лучшем случае нифига не оседает, либо оседает неправильная информация.

И так погнали.

Косяк №1: В самом начале говорится, что "эта структура данных предназначена для нахождения минимального элемента." И что мы видим на рисунке? Кучу которая сходится к МАКСИМАЛЬНОМУ элементу. Найти в ней минимальный можно только полным перебором. Ну и дальше он собственно забывает уже о том, что в начале рассказывал про минимальный элемент и уже танцует от максимального. Понятно, что оговорка, но вы ять видос для ютуба пилите, а не в живую лекцию снимаете. Увидели косяк, переснимите этот момент, делов на три минуты с монтажом.

Косяк №2: Ну и много народу посмотрев это видео поняли, что такое куча? Типо бинарное дерево? А как это в том же Питоне реализовано? Для всех из данного видео очевидно, что куча это просто специфически отсортированный список? Где a[0] - это максимальный элемент a[1] и a[2] это второй уровень и ветви a[0]. И т.д.

Косяк №3: это уже на сайте школы. Вот нафига выкладывать текст некорректно работающей программы? "Для простоты нумерации пропустим нулевой элемент списка" - и вся наша программа пойдёт по одному месту, т.к. на нормальных массивах в которых нулевой элемент не пропустили, она работать не будет без доработки. Нахрена так делать? Для какой простоты вы превратили простой пример в нетривиальную для новичка задачу. Обычный человек посмотрит на такое, поймёт, что нифига не понимает и тупо забьёт.

И вот такая вот дичь в программировании абсолютно везде. На платных курсах, в книгах, в лекциях. Словно авторы специально делают всё, что бы программистов было поменьше и что бы люди думали, что программирование это сложно. Да, сложно, если тебя специально пытаются запутать, а не объясняют человеческим языком!

ibkwipc
Автор

Этих картинок полон интернет, лучше бы объяснил, как найти путь к элементу по его индексу.

juutvqz