摘要: 弗洛伊德算法求解图中任意一对顶点之间的最短路径,其路径信息用二维数组path[ ][ ]存储,另外还需维护一个二位数组A(k)[ i ] [ j ]用来存储顶点i经由顶点k作为中间顶点到达顶点j的最短路径长度,当然如果以k作为中间顶点时路径较之前边长,则数组A中的路径长度仍不变,与其对应的path数 阅读全文
posted @ 2019-08-19 23:54 风和雨滴 阅读(242) 评论(0) 推荐(0)
摘要: 迪杰斯特拉算法是用于求解图的单元最短路径问题,即某个源点到达图中其余顶点的最短路径,其核心思想是每次从剩余未归入路径的顶点中找到一个到达当前路径距离最短的顶点,将其归入路径中,共执行n-1次。该算法需要三个辅助数组,s[ ]数组用来标记各个顶点有没有被归入当前路径中,dist[ ]数组用于表示当前源 阅读全文
posted @ 2019-08-19 22:29 风和雨滴 阅读(562) 评论(0) 推荐(0)
摘要: 普利姆算法的核心是从一个顶点出发,以这个顶点为一个树,依次将剩余顶点中到达这棵树权值小的顶点加入到树中, 为此算法需要lowcost[ ]数组来存储图中各个顶点到这棵树的权值,其中以值0来表示该顶点已经在树中,执行N-1个即可完成添加 另外设adjvex[ ]数组用来存储每个顶点在树中的“前驱”结点 阅读全文
posted @ 2019-08-19 00:13 风和雨滴 阅读(1021) 评论(0) 推荐(0)