Как работают алгоритмы сортировки

    Иногда для понимания того, как работает та или иная вещь, лучше один раз увидеть, чем сто раз услышать.

    Замечательный сайт www.sorting-algorithms.com позволяет увидеть, как сортируются данные разными алгоритмами. Вы сможете посмотреть анимацию в зависимости от алгоритма, исходных данных.



    Все это бегает и сортируется прямо на ваших глазах!

    Работает на Google App Engine, видимо, поэтому и лежит от посетителей с «Хабра».
    Поделиться публикацией

    Похожие публикации

    Комментарии 63

      0
      Только на днях подумал, что пора мне этим заняться — а тут такая статья.
        +3
        Спасибо, за отличный пример. Из раряда «Must have».
          +1
          В делфи был проект с примерами сортировки. Причем эта картинка один в один как пример из делфи.
          +6
          Не совсем понятно, зачем было упоминать про Google App Engine, учитывая, что это всё обыкновенная gif-анимация…
            +4
            Все, теперь меня сольют, пропЕарил Гугол.
              +22
              Неделя кровавых расправ! Хе-хе-хе…
            0
            Очень наглядно, спасибо за ресурс =) А возможности сравнения сортировок нет или я ее не нашел?
              0
              Ну там сравнение в наглядной форме :)
                +1
                Да, прошу прощенья, я идиот, не сразу разобрался в интерфейсе =)
                0
                А возможности сравнения сортировок нет или я ее не нашел?
                Если Вы про скорость, то почитайте Д. Кнута.
                  0
                  Не помню, чтобы у Кнута было сравнение по скорости.
                  Сравнение скорости и описание алгоритмов (с кодом на Pascal) есть у Вирта: www.mat.net.ua/mat/Virt-Algoritmi-programmi.htm
                +5
                лет 7 назад, если не больше, пододное уже было… например
                www.cs.ubc.ca/~harrison/Java/sorting-demo.html
                  +5
                  Да и на хабре было то, что автор показывает в этом топике, только сайт переехал habrahabr.ru/blogs/algorithm/27788/
                    –24
                    Это ужасно, сейчас мне устроят слив за боянчег.
                      +17
                      Ты заколебал ныть, долбанный Эмо.
                        –13
                        Все, мне пипец, теперь меня ничто не спасет.
                      0
                      А хабру меньше 7 лет.
                        –1
                        Правда?=)
                  +2
                  Ну вот, хабраэффект :-)
                    –7
                    Ну вот :( Гугл апп оказался галимым.
                      –2
                      гугл слёг под хабраэффектом )
                        +2
                        слег и закончилась квота, немного различные понятия.
                          0
                          нонче хабр какой-то серьезный пошел, без irony шутки не воспринимаются
                      0
                      Походу Google AppEngine – говно, сайт состоящий только из статики уже лежит.
                        +2
                        ну видимо авторы не заплатили за допнагрузку от хабраэффекта :)
                        +2
                        «This Google App Engine application is temporarily over its serving quota. Please try again later.»
                        =)
                          –1
                          Мне страшно от мысли, что пользователи «Хабра» могут начать что-то искать в «Гугле».
                            +2
                            Ну, это всего лишь означает, что сайт размещен на бесплатном аккаунте, там таки есть ограничения по ресурсам. Если бы был платный — просто больше денег списали бы.
                              0
                              У меня блог на недорогом хостинге выдерживал по 60 тыс в день, при том, что «Вордпресс» стоит.
                                +1
                                Там ограничение на трафик 1 гиг в сутки. Если картинка весит 200Кб, то бесплатных квот хватит на 5.000 юзеров. Если же заплатить один доллар, ту же картинку смогут посмотреть уже ~45.000 юзеров. Качество услуг напрямую зависит от толщины бумажника.
                                  0
                                  А на бесплатном?
                                    0
                                    Ну жежешка держалась :)
                              +1
                              Посмотрю завтра
                              0
                              Неинтересные (судя по скрину) сортировки, все стандартненькие. Даже за O(n) нету ни одной. А хочется про какой нибудь bitonic sort узнать, кстати ни одного нормального объяснения не нашёл.
                                0
                                Сортировка за O(n) ??
                                Скажите в какую сторону гуглить, очень интересно почитать про это.
                                  +3
                                  Гуглите сортировку подсчётом, и поразрядную сортировку. Кстати работают даже проще чем всякие кусорты и сортирующие деревья. Однако то что они асимтотически работают за O(n) не обозначает что они работают быстрее логарифмических сортировок во всех случаях. Тем не менее и для них есть применение.
                                    0
                                    Алгоритмы за O(n)? Такие бывают (кроме арифметической, которая едва ли заслуживает упоминания)?
                                      +1
                                      Под арифметической сортировкой подразумивается сортировка подсчётом? Почему не заслуживает внимания, заслуживает. Может быть в общем случае эта сортировка не самая лучшая из за большого расхода памяти, однако если нам надо отсортировать массив относительно коротких типов вполне подходит. А ещё она подходит если за 15 минут нужно написать рабочий код.
                                        0
                                        да любую в принципе сортировку можно написать за 15 минут.

                                        алгоритмы за O(n) есть, более того, они используются довольно-таки хорошо.

                                        К примеру, поразрядная сортировка выдает результаты лучше, нежели та же самая быстрая сортировка, когда нужно отсортировать >= 10^7 чисел
                                          0
                                          Я к тому что сортировка подсчётом займёт в написании у меня полторы минуты, вместо трёх на кусорт, в задачу обычно входит не только сортировка. Писать сортировку за 15 минут это вообще стыд и срам. Если это конечно более менее классическая сортировка.

                                          Поразрядная, да, конечно используется, но почему то так вышло что мне ни разу не приходилось её писать. Хотя ещё придётся наверное.
                                        0
                                        я в своё время наткнулся на en.wikipedia.org/wiki/Bead_sort. оно клёвое.
                                      +2
                                      Не понял к чему ирония по поводу работы App Engine, скорее всего авторы не перенесли статику в какое-то другое место, по рекомендациям Гугла. Раньше некоторые использовали гугловский же Google Code для подобных вещей.
                                        –1
                                        Перейдите по ссылке — поймете, к чему ирония ;-)
                                        +1
                                        Quad Damage^W^WQuota is over!
                                          –5
                                          Ну что ребята положили сайтец уже, а…
                                          Значит многих тема заинтересовала :)
                                          Вот что мне по ссылке выдало.
                                          Over Quota
                                          This Google App Engine application is temporarily over its serving quota. Please try again later.
                                          +4
                                          не знаю было ли, но можно еще послушать как звучат некоторые алгоритмы
                                            0
                                            Похожая программа есть в дистрибутивах Delphi в папке «c:\Program Files\Borland\Delphi7\Demos\Threads» (я заметил только в версии 7 в первый раз, но думаю с версии 3 он уже там).

                                            Там такими же квадратиками с полосками иллюстрируется многопоточность на примере трех алгоритмов сортировки: пузырьковая, выбором и быстрая.

                                            Всегда показываю этот пример студентам на лекциях… каждый раз у аудитории безумный восторг от этих полосочек.
                                              0
                                              да, вот это наглядность! (или наслышность:)
                                              А сабж так и лежит под гнётом хабраэффекта, надо будет позже заценить.
                                              0
                                              Давненько уже видел, думаю понастальгирую, а не тут-то было, хабраэффект.
                                                0
                                                Все это конечно хорошо, но где бы эту гифку посмотреть теперь?
                                                  0
                                                  503: Over Quota
                                                  This Google App Engine application is temporarily over its serving quota. Please try again later.

                                                  Хабра эффект :)
                                                    +2
                                                    Наверное хабровчане вернулись со школы, и ломанулись проверить…
                                                    0
                                                    Есть ещё такая визуализация:
                                                  • НЛО прилетело и опубликовало эту надпись здесь
                                                      0
                                                      Я смог увидеть это.
                                                      Автор,
                                                      Дайте разрешение я перенесу на свой сервер, и дам ссылку.
                                                        0
                                                        Это к автору того сайта надо за разрешением.
                                                          0
                                                          Думал вы автор :-)
                                                            0
                                                            Теперь вы знаете :) Пишите ему ;-)

                                                      Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

                                                      Самое читаемое