알고리즘
트리 구현
#include #include #include // 트리 구조체 typedef struct treeNode { int data; treeNode* left; // 왼쪽 노드에 대한 포인터 treeNode* right; // 오른쪽 노드에 대한 포인터 }; // 트리 객체 초기화 treeNode* makeRootNode(int data, treeNode* leftNode, treeNode* rightNode) { treeNode* root = (treeNode*)malloc(sizeof(treeNode)); root->data = data; // data 초기화 root->left = leftNode; // 왼쪽 링크 초기화 root->right = rightNode; // 오른쪽 링크 초기화 retur..
[C] 인접 행렬로 그래프 구현
// 인접 행렬 // 그래프를 인접행렬로 표현하기 #include #include #define MAX_VERTEX 30 typedef struct graphType { int n; // 정점개수 int adjMatrix_Arr[MAX_VERTEX][MAX_VERTEX]; }graphType; // 공백. 그래프를 생성하는 연산 void CreateGraph(graphType* ptr) { ptr->n = 0; // 정점 개수를 0으로 초기화 for (int i = 0; i adjMatrix_Arr[i][j] = 0; } } } // 그래프에 정점 n을 삽입하는 연산 void InsertV..
[C] 인접리스트로 그래프 구현
// 그래프를 인접리스트로 표현하기 #include "stdio.h" #include "stdlib.h " #define MAX_VERTEX 30 // 인접리스트의 노드 구조 typedef struct graphNode { int vertex; // 정점을 나타내는 데이터 필드 graphNode *link; // 다음 인접 정점을 연결하는 링크필드 }graphNode; // 그래프를 인접리스트로 표현하기 위한 구조체 typedef struct graphType { int n; //정점 개수 graphNode *adjList_Arr[MAX_VERTEX]; }graphType; // 공백그래프를 생성하는 연산 void CreateGraph(graphType *ptr) { int v; ptr->n = 0; f..