Сортировка кучей на AlgoLab: algolab.valemak.com/ru/heap
Пікірлер: 50
@alexalexander32523 жыл бұрын
Фраза "спускаемся на уровень выше" на 6:14 взорвала мой мозг.
@LYT101 Жыл бұрын
Благодарю, это самое понятное визуальное представление алгоритма пирамидальной сортировки.
@maksim2530 Жыл бұрын
Дай Бог тебе здоровья, чётко объяснил и разложил суть сортировки
@solidesuu2 жыл бұрын
Далеко не лучшее объяснение, но отличная визуализация сильно выручает
@alexanderstashchuk83308 ай бұрын
Спасибо! Лучшее наглядное объяснение.
@user-ep3jn2bu8z7 күн бұрын
Мужик, ты реально хорош, спасибо тебе!
@maxpo8012 жыл бұрын
Вы детально рассказываете реализацию идеи, но саму идею ПРОСТЫМИ СЛОВАМИ не рассказали. А по сути, мы хотим, получить как-то бинарное дерево, отсортированное по величине значений элементов. Проще начать сортировку с нижних троек, постепенно сортируя дерево вверх. Почему иногда происходит спуск вниз, если мы изначально поднимаемся от ветвей к корню? Потому что у нас цель получить отсортированное по убыванию значений дерево, а при перестановке значений у любого узла, одна из его ветвей может оказаться неотсортированной, что противоречит главной задаче - сортировке, и если не сделать спуск сразу, то алгоритм сортировки будет намного сложнее. Детали - это хорошо, но большинство академических преподавателей страдает невозможностью простыми словами изложить простую идею, которая изначально и приходит создателям в голову, когда они лежат в постели, сидят на унитазе, или едят. А так нам приходится пробираться из дебрей реализации к простой изначальной идее. А так, лайк за видео!
@vikvik71172 жыл бұрын
Золотые слова. Уже статьи 4 прочел, не разобрался. Решил видеоролики посмотреть.
@kalts_daniil3 ай бұрын
Прекрасное объяснение! Спасибо огромное за урок!!!
@oleksii23622 жыл бұрын
Отлично подготовленная презентация! Спасибо!
@user-fx8is3hb9k2 жыл бұрын
Спасибо огромное! Очень хорошо и наглядно объясняете
@user-dv4ti7wk5k3 жыл бұрын
Большое спасибо, всё очень понятно объяснено!
@kagatooo3 жыл бұрын
Качество видео просто шик. Я и сам занимаюсь гайдами, но от вашего прикурил!
@user-ow3vx1ov9e3 жыл бұрын
Обалденно, спасибо огромное, продолжай выпускать свои ролики, пожалуйста!
@lukasmog777 Жыл бұрын
крутое наглядное объяснение!спасибо за видео!
@frysisrawhide89233 ай бұрын
Лучше и наглядное объяснение. Уже день пытаюсь вдуплить, почему да как.
@user-oh2wj8rz6u Жыл бұрын
Отличное объяснение, спасибо!
@user-tp3jb4ow1m3 жыл бұрын
Спасибо! Разъяснено понятно!
@timursyrma3 жыл бұрын
Здравствуйте! Можете, пожалуйста, в ближайшем будущем разобрать Quick-Sort и Merge-Sort? А так, спасибо Вам за видео!! Все очень круто и понятно :)
@azimutjava3 жыл бұрын
Отличная подача!
@user-pl5rb1nb3p Жыл бұрын
Графика хорошо показывает алгоритм
@Mousepiece3 жыл бұрын
Визуально понятно, но не понимаю, как это реализовать в виде кода
@andrey-ei4px2 жыл бұрын
Такая же хуйня, заебало программирование в универе
@user-cb5wl4br8c2 жыл бұрын
@@andrey-ei4px оо, да понимаю. Нафиг вообще это прога нужна не на программиста поступал
@rustautopanel3 жыл бұрын
Благодарен за видео!
@anikroan435710 ай бұрын
огонь!!!
@user-jo7ci2wy4j Жыл бұрын
Спасибо огромное
@Km-pn3hf2 жыл бұрын
спасибо за видео
@sadriddinovshukrulloh54912 жыл бұрын
spasibo vam bolshoe
@maximusmm77232 ай бұрын
Спасибо вам
@Rivrabobra3 жыл бұрын
блеск! спасибо))
@AndrasteCries Жыл бұрын
ты что Бог?
@hiitsif3 жыл бұрын
Спасибо!
@vgbhj8 ай бұрын
спасибо
@user-ix7mu1jc4b Жыл бұрын
святой
@sergey6661313 Жыл бұрын
Если в дереве всё равно сравниваются все элементы как минимум 1 раз - почему бы не заменить все эти перестановки на просто поиск максимального числа?
@user-ne4wu9hl6l Жыл бұрын
вот аналогично сижу и не понимаю этого... куча сравнений, постоянных перестановок туда сюда
@user-yz7wy3mm1h Жыл бұрын
потому что поиск максимума у тебя всегда будет занимать о(n) и для n операций выйдет о(n^2). Благодаря структуре кучи мы каждый раз получаем самый максимум в первом элементе массива (нулевом если быть точным), далее свопаем его с последним элементом, далее просеиваем этот новый первый элемент массива уже за logn т.к. на каждом уровне просеивания мы двигаемся логарифмически . В итоге получается n операций по logn. Пирамидальная сортировка хуже по скорости (на константу) чем те же быстрая и слиянием, но гораздо лучше вплане потребления памяти: в каждый момент времени в буфере находится максимум один элемент (потребление по памяти выходит о(1)). Это преимущество пирамидальной сортировки и является решающим в задачах где очень важно сортировать элементы в условиях ограничения расходуемой памяти.
@user-ne4wu9hl6l Жыл бұрын
@@user-yz7wy3mm1h уф.. спасибо большое за разъяснение. Но для общего понимания для меня слияние все равно гораздо проще для понимания и реализации, чем эта) видимо надо написать или применить ее пару тройку раз тогда может уложится получше)
@sergey6661313 Жыл бұрын
@@user-yz7wy3mm1h как раз тематика видео и должна была наглядно показать то что вы говорите. Но она этого не делает. По видео создаётся впечатление что сравнение происходит со ВСЕМИ элементами, что бы там не писали про сложнгости олгоритма заменяя понятные простому обывателю фразы проде "по одному сравнению на каждый элемент" буквами "On" и другими вы ясность не вносите. фактически достаточно было бы сказать что благодоря тому что пирамида "предсортирована" предыдрущей итерацией - это позволяет выполнить меньше сравнений чем при полном переборе.
@ivankrechet233119 күн бұрын
Ну вы хоть бы отредактировали своё выступление! Что значит "только спускаемся на уровень выше ..... спускаемся на уровень выше" ? И не надо оправдываться, что тут всё понятно, и что вы имели в виду вот именно этот или тот конкретный уровень ..... :)))
@user-pe5mo5co4x2 жыл бұрын
"order by" - решает фсе!
@tire_ks_murina2 жыл бұрын
Не очень хорошее объяснение, никакие элементы на последнем этапе не "выкидываются" из дерева, а лишь переставляются с рекурсивной проверкой. Это некоторая "авторская модификация" алгоритма
@user-yz7wy3mm1h Жыл бұрын
мы просто длину рассматриваемого массива уменьшаем на 1 пока она не станет равно 0))) все ок он поясняет
@ozimandias17389 ай бұрын
Фронтендер знать такое не должен - никогда в работе не пригодится. Данное знание опционально.
@ExileHB9 ай бұрын
Но все равно интересно для себя
@ozimandias17389 ай бұрын
@@ExileHB , написал коммент только потому, что вначале автор видео сказал: "... алгоритм, который должен знать каждый программист..."
@zhimbura8 ай бұрын
Дак он сказал каждый программист, а фронтендер не программист))
@narimz6 ай бұрын
Это зависит от воронки кандидатов. Если их много то обычно делают тесты на алгоритмы вне зависимости от направления : )