前n条最短路算法matlab源代码资料来源 这是Mitchell,Mount和Papadimitriou于1987年首次描述的用于三角形网格(三角表面)的测地线(最短路径)算法的实现,[1]进行了一些小的改进,扩展和简化。 该算法具有O(n ^ 2 log n)最坏情况下的时间复杂度,但实际上可以在合理的时间内处理百万个节点的网格。 有关快速概述,请参见[2]。 该算法的基本思想与Dijkstra的用于在加权图上找到最短路径的算法非常相似。 它包括两个步骤: 来自源的距离场在网格表面上的传播(缓慢) 追溯从目标点到最近源的最短路径(快速) 为了进行调试和比较,我还实现了两种近似算法 Dijkstra在图上由网格的顶点和边缘创建的最短路径 细分(在网格的每个边缘上放置N个附加顶点,直接连接属于同一面的所有顶点,在结果图上运行Dijkstra)细分算法的一个不错的特性是,当N = 0时,它变为Dijkstra并计算出精确的距离当N->无穷大时。 输入网格表示为两个数组:顶点(每个顶点具有树坐标)和面(每个面表示为其顶点的索引)。 与算法的大多数通信是通过SurfacePoints(网格表面
2022-05-05 20:19:27 292KB 系统开源
1
实现K最短路算法,包括双向图算法(删除法)、单向无环图算法(附加节点法)。VC7、VC6都可通过编译。算法原理可在CSDN上找到一堆论文。
2019-12-21 18:49:19 83KB KSP 前K条最短路 K-shortest 源代码
1