Сортировка кучей (пирамидальная сортировка) :: Heap sort

Sdílet
Vložit
  • čas přidán 7. 08. 2020
  • Сортировка кучей на AlgoLab:
    algolab.valemak.com/ru/heap

Komentáře • 51

  • @alexalexander3252
    @alexalexander3252 Před 3 lety +13

    Фраза "спускаемся на уровень выше" на 6:14 взорвала мой мозг.

  • @maksim2530
    @maksim2530 Před rokem +4

    Дай Бог тебе здоровья, чётко объяснил и разложил суть сортировки

  • @LYT101
    @LYT101 Před rokem +4

    Благодарю, это самое понятное визуальное представление алгоритма пирамидальной сортировки.

  • @alexanderstashchuk8330
    @alexanderstashchuk8330 Před 9 měsíci +5

    Спасибо! Лучшее наглядное объяснение.

  • @solidesuu
    @solidesuu Před 2 lety +8

    Далеко не лучшее объяснение, но отличная визуализация сильно выручает

  • @user-fx8is3hb9k
    @user-fx8is3hb9k Před 3 lety

    Спасибо огромное! Очень хорошо и наглядно объясняете

  • @kalts_daniil
    @kalts_daniil Před 5 měsíci +1

    Прекрасное объяснение! Спасибо огромное за урок!!!

  • @oleksii2362
    @oleksii2362 Před 3 lety +1

    Отлично подготовленная презентация! Спасибо!

  • @kagatooo
    @kagatooo Před 3 lety +2

    Качество видео просто шик. Я и сам занимаюсь гайдами, но от вашего прикурил!

  • @user-dv4ti7wk5k
    @user-dv4ti7wk5k Před 3 lety +2

    Большое спасибо, всё очень понятно объяснено!

  • @maxpo801
    @maxpo801 Před 2 lety +11

    Вы детально рассказываете реализацию идеи, но саму идею ПРОСТЫМИ СЛОВАМИ не рассказали. А по сути, мы хотим, получить как-то бинарное дерево, отсортированное по величине значений элементов. Проще начать сортировку с нижних троек, постепенно сортируя дерево вверх. Почему иногда происходит спуск вниз, если мы изначально поднимаемся от ветвей к корню? Потому что у нас цель получить отсортированное по убыванию значений дерево, а при перестановке значений у любого узла, одна из его ветвей может оказаться неотсортированной, что противоречит главной задаче - сортировке, и если не сделать спуск сразу, то алгоритм сортировки будет намного сложнее.
    Детали - это хорошо, но большинство академических преподавателей страдает невозможностью простыми словами изложить простую идею, которая изначально и приходит создателям в голову, когда они лежат в постели, сидят на унитазе, или едят. А так нам приходится пробираться из дебрей реализации к простой изначальной идее.
    А так, лайк за видео!

    • @vikvik7117
      @vikvik7117 Před 2 lety

      Золотые слова. Уже статьи 4 прочел, не разобрался. Решил видеоролики посмотреть.

  • @user-ow3vx1ov9e
    @user-ow3vx1ov9e Před 3 lety +2

    Обалденно, спасибо огромное, продолжай выпускать свои ролики, пожалуйста!

  • @lukasmog777
    @lukasmog777 Před rokem +1

    крутое наглядное объяснение!спасибо за видео!

  • @user-oh2wj8rz6u
    @user-oh2wj8rz6u Před rokem

    Отличное объяснение, спасибо!

  • @user-tp3jb4ow1m
    @user-tp3jb4ow1m Před 3 lety +2

    Спасибо! Разъяснено понятно!

  • @azimutjava
    @azimutjava Před 3 lety

    Отличная подача!

  • @user-ep3jn2bu8z
    @user-ep3jn2bu8z Před 2 měsíci

    Мужик, ты реально хорош, спасибо тебе!

  • @rustautopanel
    @rustautopanel Před 3 lety

    Благодарен за видео!

  • @frysisrawhide8923
    @frysisrawhide8923 Před 5 měsíci +1

    Лучше и наглядное объяснение. Уже день пытаюсь вдуплить, почему да как.

  • @anikroan4357
    @anikroan4357 Před rokem +1

    огонь!!!

  • @Km-pn3hf
    @Km-pn3hf Před 2 lety +1

    спасибо за видео

  • @maximusmm7723
    @maximusmm7723 Před 4 měsíci +1

    Спасибо вам

  • @user-jo7ci2wy4j
    @user-jo7ci2wy4j Před rokem +1

    Спасибо огромное

  • @Rivrabobra
    @Rivrabobra Před 3 lety +1

    блеск! спасибо))

  • @hiitsif
    @hiitsif Před 3 lety

    Спасибо!

  • @user-pl5rb1nb3p
    @user-pl5rb1nb3p Před rokem

    Графика хорошо показывает алгоритм

  • @timursyrma
    @timursyrma Před 3 lety +2

    Здравствуйте! Можете, пожалуйста, в ближайшем будущем разобрать Quick-Sort и Merge-Sort? А так, спасибо Вам за видео!! Все очень круто и понятно :)

  • @sadriddinovshukrulloh5491

    spasibo vam bolshoe

  • @vgbhj
    @vgbhj Před 10 měsíci

    спасибо

  • @Mousepiece
    @Mousepiece Před 3 lety +10

    Визуально понятно, но не понимаю, как это реализовать в виде кода

    • @andrey-ei4px
      @andrey-ei4px Před 2 lety +2

      Такая же хуйня, заебало программирование в универе

    • @user-cb5wl4br8c
      @user-cb5wl4br8c Před 2 lety +2

      @@andrey-ei4px оо, да понимаю. Нафиг вообще это прога нужна не на программиста поступал

  • @AndrasteCries
    @AndrasteCries Před rokem +6

    ты что Бог?

  • @user-ix7mu1jc4b
    @user-ix7mu1jc4b Před rokem +2

    святой

  • @sergey6661313
    @sergey6661313 Před rokem

    Если в дереве всё равно сравниваются все элементы как минимум 1 раз - почему бы не заменить все эти перестановки на просто поиск максимального числа?

    • @user-ne4wu9hl6l
      @user-ne4wu9hl6l Před rokem

      вот аналогично сижу и не понимаю этого... куча сравнений, постоянных перестановок туда сюда

    • @user-yz7wy3mm1h
      @user-yz7wy3mm1h Před rokem +5

      потому что поиск максимума у тебя всегда будет занимать о(n) и для n операций выйдет о(n^2). Благодаря структуре кучи мы каждый раз получаем самый максимум в первом элементе массива (нулевом если быть точным), далее свопаем его с последним элементом, далее просеиваем этот новый первый элемент массива уже за logn т.к. на каждом уровне просеивания мы двигаемся логарифмически . В итоге получается n операций по logn. Пирамидальная сортировка хуже по скорости (на константу) чем те же быстрая и слиянием, но гораздо лучше вплане потребления памяти: в каждый момент времени в буфере находится максимум один элемент (потребление по памяти выходит о(1)). Это преимущество пирамидальной сортировки и является решающим в задачах где очень важно сортировать элементы в условиях ограничения расходуемой памяти.

    • @user-ne4wu9hl6l
      @user-ne4wu9hl6l Před rokem

      @@user-yz7wy3mm1h уф.. спасибо большое за разъяснение. Но для общего понимания для меня слияние все равно гораздо проще для понимания и реализации, чем эта) видимо надо написать или применить ее пару тройку раз тогда может уложится получше)

    • @sergey6661313
      @sergey6661313 Před rokem +1

      @@user-yz7wy3mm1h как раз тематика видео и должна была наглядно показать то что вы говорите. Но она этого не делает. По видео создаётся впечатление что сравнение происходит со ВСЕМИ элементами, что бы там не писали про сложнгости олгоритма заменяя понятные простому обывателю фразы проде "по одному сравнению на каждый элемент" буквами "On" и другими вы ясность не вносите. фактически достаточно было бы сказать что благодоря тому что пирамида "предсортирована" предыдрущей итерацией - это позволяет выполнить меньше сравнений чем при полном переборе.

  • @user-pe5mo5co4x
    @user-pe5mo5co4x Před 3 lety

    "order by" - решает фсе!

  • @ozimandias1738
    @ozimandias1738 Před 11 měsíci +2

    Фронтендер знать такое не должен - никогда в работе не пригодится. Данное знание опционально.

    • @ExileHB
      @ExileHB Před 11 měsíci +1

      Но все равно интересно для себя

    • @ozimandias1738
      @ozimandias1738 Před 11 měsíci +2

      @@ExileHB , написал коммент только потому, что вначале автор видео сказал: "... алгоритм, который должен знать каждый программист..."

    • @zhimbura
      @zhimbura Před 10 měsíci +11

      Дак он сказал каждый программист, а фронтендер не программист))

    • @narimz
      @narimz Před 8 měsíci

      Это зависит от воронки кандидатов. Если их много то обычно делают тесты на алгоритмы вне зависимости от направления : )

    • @user-kv3rm8qu5g
      @user-kv3rm8qu5g Před měsícem

      ​@@zhimbura, а кто же тогда фронтендер?

  • @tire_ks_murina
    @tire_ks_murina Před 2 lety

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

    • @user-yz7wy3mm1h
      @user-yz7wy3mm1h Před rokem +1

      мы просто длину рассматриваемого массива уменьшаем на 1 пока она не станет равно 0))) все ок он поясняет

  • @ivankrechet2331
    @ivankrechet2331 Před 2 měsíci

    Ну вы хоть бы отредактировали своё выступление! Что значит "только спускаемся на уровень выше ..... спускаемся на уровень выше" ? И не надо оправдываться, что тут всё понятно, и что вы имели в виду вот именно этот или тот конкретный уровень ..... :)))