普里姆算法以邻接矩阵存储
时间: 2023-11-04 07:49:09 浏览: 118
prim算法 附加邻接矩阵的存储图
普里姆算法以邻接矩阵存储时,其基本思想是:首先选取一个起始节点,然后利用贪心策略从该节点开始,选择与当前已选中节点集合相邻的、权值最小的边所连接的节点加入已选中节点集合。重复这个过程,直到已选中节点集合包含所有节点为止。
具体实现时,可以使用一个一维数组来记录每个节点是否被选中,并使用一个二维数组来存储邻接矩阵。我们还需要一个一维数组来记录每个节点到已选中节点集合的最小距离。
具体步骤如下:
1. 初始化已选中节点集合,将起始节点加入集合中。
2. 对于所有未被选中的节点,计算其到已选中节点集合的最小距离,并将距离最小的节点加入已选中节点集合中。
3. 更新已选中节点集合中节点的最小距离,即如果新加入的节点与已选中节点集合中的某个节点相邻,且连接它们的边的权值小于该节点到已选中节点集合的最小距离,则更新该节点的最小距离。
4. 重复步骤2和步骤3,直到已选中节点集合包含所有节点。
最终,已选中节点集合中的节点和它们之间的边就构成了一棵最小生成树。
阅读全文