现实世界算法可视化
概述
该存储库包含我使用Bridges API创建的多种复杂算法的可视化算法。可视化器演示了各种算法在实践中的工作方式,提供了一种交互式和视觉方法来理解其行为和性能。您可以探索Bridges-CS的可视化。
涵盖算法
在整个课程中,我实施并显示了以下算法:
1。排序算法
- 合并排序:分类和分类算法具有O(n log n)的时间复杂性。
- QuickSort :另一种有效的排序算法,该算法通过对数组进行划分并递归对分区进行分类。
2。图表和遍历
- 广度优先搜索(BFS) :在下一个深度级别移至节点之前,请探索当前深度的所有节点。
- 深度优先搜索(DFS) :在回溯之前,尽可能沿每个分支探索。
- 应用程序:实施BFS来计算培根编号并使用邻接列表和矩阵探索图表。
3。图算法
- Dijkstra的最短路径算法:在图中找到节点之间的最短路径。
- PRIM的最小跨越树(MST) :计算图的最小跨越树。
- 项目:使用MST从管状结构中提取的中心线上应用的最短路径分析。
4。弦匹配
- Horspool的算法:在基因序列比对项目中使用的有效弦弦匹配算法,从而实现了全球和局部比对。
5。搜索和索引
- 二进制搜索:用于在排序阵列中查找元素的对数时间搜索算法。
- Pagerank :使用Wikipedia Actor/Movie Data实现了Pagerank算法,以索引和排名网页。
- 空间搜索树:探索的空间数据结构,例如四方。
6。其他算法
- 旅行推销员问题:使用Prim的MST来近似美国城市的旅行推销员之旅。
- 背包问题:应用动态编程技术来解决此优化问题。
项目和可视化器
使用Bridges API实现和可视化上述每种算法。可以通过Bridges-CS平台探索可视化器。这些项目展示了复杂算法的现实应用,并对它们的执行提供了直观的理解。
项目:
- BFS和DFS遍历可视化器
- Dijkstra的最短路径查找器
- 合并排序和QuickSort Visualizer
- Wikipedia数据的Pagerank算法
- 基因序列比对可视化器
如何运行
- 克隆这个存储库:
git clone https://github.com/sudo-amancodes/real-world-algorithms-visualizers.git
- 运行特定实验室的实验文件:
使用的技术:
- Python:启动用于算法实现的编程语言。
- Java:用于实现算法的核心编程语言。
- 桥接API:用于创建算法的可视化。
演示:


Quadtree和Quadtree搜索接口的屏幕截图。