#include<stdio.h> #define infinity 9999 //시작정점을 제외하고 나머지 정점들의 int G[MAX][MAX],spanning[MAX][MAX],n; // G는 모든 각 정점사이의 비용을 입력하기 위한 매트릭스, int prims(); //프림 알고리즘 기능의 프로토타입 int main() //메인함수 printf("\n간선 매트릭스에 비용을 입력하시오.:\n");// 간선간의 모든 매트릭스 값을 입력 total_cost=prims(); //프림 function을 통해 나온 최소비용합을 변수에 저장 for(i=0;i<n;i++) printf("\n\n최소비용 값=%d",total_cost); int prims() //정점사이의 비용을 넣을 매트리스와 집합이 되었을때 최소비용을 저장하는 매트릭스를 만듬 //출발했던 정점과 방문했던 정점과 거리를 초기화 for(i=1;i<n;i++) min_cost=0; //최소비용이란 변수는 일단 0으로 지정
while(no_of_edges>0) u=from[v]; //스패닝 트리에 간선을 삽입 //최소비용거리로된 정점들을 다시 배열로 정리 min_cost=min_cost+cost[u][v]; return(min_cost); |