데이터 구조 - 그림 의 저장 구조 - 인접 행렬

9271 단어 데이터 구조
데이터 구조 - 그림 의 저장 구조 - 인접 행렬 소스 코드
소스 코드
#include "stdio.h"    
#include "stdlib.h"   
#include "io.h"  
#include "math.h"  
#include "time.h"

#define OK 1
#define ERROR 0
#define TRUE 1
#define FALSE 0
#define MAXVEX 100 /*      ,       */
#define INFINITY 65535 /*infinity->     */

typedef int Status;	/* Status      ,           , OK  */
typedef char VertexType; /*             */
typedef int EdgeType; /*               */

/*    */
typedef struct
{
	VertexType vexs[MAXVEX]; /*     */
	EdgeType arc[MAXVEX][MAXVEX];/*     ,      */
	int numNodes, numEdges; /*              */
}MGraph;

/*               */
void CreateMGraph(MGraph *G)
{
	int i, j, k, w;

	printf("        :
"
); /* */ scanf_s("%d,%d", &G->numNodes, &G->numEdges); /* ('A'\'B' ), */ for (i = 0; i <G->numNodes; i++) scanf_s(&G->vexs[i]); /* */ for (i = 0; i <G->numNodes; i++) for (j = 0; j <G->numNodes; j++) /*infinity-> -> ,0 */ G->arc[i][j] = INFINITY; /* numEdges , */ for (k = 0; k <G->numEdges; k++) { printf(" (vi,vj) i, j w:
"
); /* (vi,vj) i j w */ scanf_s("%d,%d,%d", &i, &j, &w); G->arc[i][j] = w; /* -> */ G->arc[j][i] = G->arc[i][j]; } } int main(void) { MGraph G; CreateMGraph(&G); return 0; }

좋은 웹페이지 즐겨찾기