최소비용신장트리 그래프 구하기(자료구조)

*주*
최초 등록일
2006.12.22
최종 저작일
2006.01
파일확장자 C언어
가격 1,000원 할인쿠폰받기
다운로드
장바구니

소개글

* 자료구조.

* 연결된 그래프에서 간선의 길이의 합을 최소로 하는 그래프.

* Prime 알고리즘을 사용.

* 행렬을 이용한 값으로 표시.

컴파일 실행환경

Microsoft visual 6.0

본문내용

// 최소비용신장트리 그래프 구하기!!

// 내용 : 제가 프로그래밍한 최소비용신장트리 구하기는 인접행렬을 이용하였습니다.
// 저희 자료구조에서 사용한 인접행렬 부분을 참조하여 페이지 361 에서 구현한 인접한 행렬끼리에
// 가중치 값을 주어서 2차원 배열을 이용해서 표시하였습니다.
//
// 인용한 알고리즘은 Prim 알고리즘을 사용하였습니다.
// 여기에서 표시한 내용은 책 페이지 403페이지 그래프를 최소비용신장트리로 구현하였습니다.
// 참고로 이 그래프는 무방향 그래프여서 행렬에 표시돼는 내용이 대칭입니다.

#include <stdio.h>
#include <stdlib.h>

#define MAX_VERTEX 30 // <-- 정점의 개수 제한.
#define MAX_NUM 100 // <-- 가중치의 최대값을 임의로 입력.

typedef struct graphType{
int n;
int adjMatrix[MAX_VERTEX][MAX_VERTEX];
}graphType;

void createGraph(graphType * g, int n) // <-- 우선 그래프의 인접한 행렬을 나타내기 위한 행렬 초기화.
{ // <-- 그래프의 정점도 입력받음.
int i, j;
g->n = n;
for(i=0 ; i<MAX_VERTEX ; i++){
for(j=0 ; j<MAX_VERTEX ; j++)
g->adjMatrix[i][j] = 0;
}
}

void insertEdge(graphType * g, int u, int v,int distance) // <-- 그래프에서 점정들 사이의 간선의 가중치값을 넣음.
{
if(u>=g->n || v>=g->n){
printf("\n 그래프에 없는 정점입니다.!");
return;
}

g->adjMatrix[u][v] = distance;
}

void print_adjMatrix(graphType * g)
{
int i, j;
for(i=0 ; i<(g->n) ; i++){
printf("\n%c |",`A`+i);
for(j=0 ; j<(g->n) ; j++)
printf("%5d", g->adjMatrix[i][j]);
}
}

참고 자료

없음
*주*
판매자 유형Bronze개인

주의사항

저작권 자료의 정보 및 내용의 진실성에 대하여 해피캠퍼스는 보증하지 않으며, 해당 정보 및 게시물 저작권과 기타 법적 책임은 자료 등록자에게 있습니다.
자료 및 게시물 내용의 불법적 이용, 무단 전재∙배포는 금지되어 있습니다.
저작권침해, 명예훼손 등 분쟁 요소 발견 시 고객센터의 저작권침해 신고센터를 이용해 주시기 바랍니다.
환불정책

해피캠퍼스는 구매자와 판매자 모두가 만족하는 서비스가 되도록 노력하고 있으며, 아래의 4가지 자료환불 조건을 꼭 확인해주시기 바랍니다.

파일오류 중복자료 저작권 없음 설명과 실제 내용 불일치
파일의 다운로드가 제대로 되지 않거나 파일형식에 맞는 프로그램으로 정상 작동하지 않는 경우 다른 자료와 70% 이상 내용이 일치하는 경우 (중복임을 확인할 수 있는 근거 필요함) 인터넷의 다른 사이트, 연구기관, 학교, 서적 등의 자료를 도용한 경우 자료의 설명과 실제 자료의 내용이 일치하지 않는 경우
최근 본 자료더보기
  • 프레시홍 - 전복
  • 프레시홍-홍어
  •  '가슴이 떨리는 건 너 때문' 시사회 초대 이벤트
  • 릴레이이벤트
최소비용신장트리 그래프 구하기(자료구조)