Главное меню » Начинающим » Еще про алгоритмы и визуализацию

Еще про алгоритмы и визуализацию

Алгоритмы составляют основу программировния. При правильном выборе алгоритма, можно повысить быстродействие программы в разы или даже на порядок!

Например, есть программа для сортировки записей о жителях города Москва (по официальным данным там проживает более 12 миллионов жителей) по возрасту. Алгоритм для выполнения этой задач может быть выбраны из нескольких алгоритмов сортировки, в том числе таких как сортировка вставками, сортировка выбором, пузырьковая сортировка, сортировка Шелла, сортировка слиянием, пирамидальная сортировка и quicksort. Не все алгоритмы, которые были упомянуты, подходят для использования в любых условиях. Для нашей задачи сортировки записей о населении Москвы, при неправильном выборе алгоритма сортировки, время, необходимое для выполнения сортировки, может составить несколько дней. Но, если выбрать правильный алгоритм, то время, необходимое для сортировки информации может быть сокращено до нескольких минут.
Визуализация помогает нам визуализировать то, что трудно себе представить. Например, помогает понять, как планеты движуться солнечной системы, помогает в понимании того, как движуться тектонические плиты, и даже помогает нам понять работу сложных алгоритмов. В этой статье мы рассмотрим сайты, которые предоставляют визуализацию для различных алгоритмов, широко применяемых в разарботке ПО.

sorting-algorithms.com


Как следует из названия, этот сайт специализируется на анимации алгоритмов сортировки, одних из самых важных алгоритмов в мире. С этими алгоритмаи мы часто сталкиваемся и в повседневной жизни.
Этот сайт содержит визуализацию для 8 алгоритмов сортировки, а именно:

  • сортировка вставками
  • сортировка выбором
  • пузырькова сортировка
  • Сортировка Шелла
  • Сортировка слиянием
  • Пирамидальная сортировка
  • Быстрая сортировка
Algomation.com


Algomation это сайт, созданный для изучения, создания и совместного использования визуализаций алгоритмов любого типа. Все доступные на этом сайте алгоритмы можно просматривать, причём совместно с любыми другими пользователями сайта. Пользователи, зарегистрированные на данном сайте, могут создавать новые анимации или драбатывать существующе.

VisuAlgo


VisuAlgo был задуман в 2011 году д-р Стивеном Халим в качестве инструмента, призванного помочь своим ученикам лучше понять алгоритмы и структуры данных, позволяя им изучать основы алгоритмов самостоятельно и в том темпе, который им удобен. Вместе с некоторыми из его студентов из Национального университета Сингапура, были разработаны ряд визуализаций, от простых алгоритмов сортировки до сложных структур данных типа графов и алгоритмов для работы с ними.
В настоящее время существует несколько современных алгоритмов, для которых визуалитзация существуют только в VisuAlgo. Например, анимация обхода графа, поиск в глубину (DFS) и поиск в ширину(BFS) и некоторые его варианты.