Реальные алгоритмы визуализации
Обзор
Этот репозиторий содержит визуализации множества сложных алгоритмов, которые я создал в рамках моего класса алгоритмов реального мира, используя API Bridges . Визуализаторы демонстрируют, как различные алгоритмы работают на практике, обеспечивая интерактивный и визуальный подход к пониманию их поведения и производительности. Вы можете изучить визуализации в Bridges-CS.
Алгоритмы покрыты
На протяжении всего курса я реализовал и визуализировал следующие алгоритмы:
1. Сортировка алгоритмов
- Сортировка слияния : алгоритм сортировки разделителя и сортировки со сложностью времени O (n log n).
- QuickSort : еще один эффективный алгоритм сортировки, который работает путем разделения массива и рекурсивно сортируя разделы.
2. Представление графика и обходы
- Поиск по ширине (BFS) : исследует все узлы на нынешней глубине, прежде чем перемещаться к узлам на следующем уровне глубины.
- Поиск по глубине (DFS) : исследует как можно дальше вдоль каждой ветви перед возвращением.
- Приложение : реализовано BFS для вычисления номеров бекона и изучения представления графика с использованием списков и матриц смежности.
3. Графические алгоритмы
- Самый короткий алгоритм пути Дейкстры : находит самый короткий путь между узлами на графике.
- Минимальное живое дерево PRIM (MST) : вычисляет минимальное дерево охватывающего графика.
- Проекты : применяемый анализ кратчайших путей на данные OpenStreetMap и извлеченные линии центра из трубчатых структур с использованием MST.
4. Сопоставление строк
- Алгоритм Horspool : эффективный алгоритм сопоставления строк, используемый в проектах выравнивания последовательностей генов, что обеспечивает как глобальное, так и локальное выравнивание.
5. Поиск и индексация
- Бинарный поиск : логарифмический алгоритм поиска времени для поиска элементов в отсортированном массиве.
- PageRank : внедрил алгоритм PageRank с использованием данных актера/фильма Википедии для индексации и ранжирования веб -страниц.
- Пространственные поисковые деревья : исследуемые пространственные структуры данных, такие как Quadtrees.
6. Другие алгоритмы
- Проблема с продавцом : использовал MST PRIM, чтобы приблизительно тур по продажам в США.
- Проблема рюкзака : прикладные методы динамического программирования для решения этой проблемы оптимизации.
Проекты и визуализаторы
Каждый из вышеперечисленных алгоритмов был реализован и визуализирован с использованием API Bridges . Визуализаторы могут быть изучены через платформу Bridges-CS. Эти проекты демонстрируют реальное применение сложных алгоритмов и обеспечивают интуитивное понимание их исполнения.
Проекты:
- BFS и DFS Traversal Visualizer
- Самый короткий поиск путей Дейкстры
- Слияние сортировки и визуализаторы QuickSort
- Алгоритм PageRank по данным Википедии
- Визуализатор выравнивания последовательности генов
Как бежать
- Клонировать это хранилище:
git clone https://github.com/sudo-amancodes/real-world-algorithms-visualizers.git
- Запустите лабораторные файлы для конкретной лаборатории:
Используются технологии:
- Python: Начало языка программирования для реализации алгоритма.
- Java: основной язык программирования для реализации алгоритма.
- API Bridges: используется для создания визуализаций алгоритмов.
Демонстрация:


Скриншот интерфейса поиска Quadtree и Quadtree.