[c언어] 그래프 표현 방법

C 언어에서 그래프는 일반적으로 인접 행렬이나 인접 리스트를 사용하여 표현됩니다.

1. 인접 행렬 (Adjacency Matrix)

인접 행렬은 2차원 배열로 그래프를 표현하는 방법입니다. 각 노드 사이의 연결 관계를 나타내는데 사용됩니다.

예시:

#define MAX_NODES 100
int graph[MAX_NODES][MAX_NODES];

2. 인접 리스트 (Adjacency List)

인접 리스트는 연결 리스트를 사용하여 그래프를 표현하는 방법입니다. 각 노드의 인접한 노드들의 목록을 저장합니다.

예시:

struct Node {
    int data;
    struct Node* next;
};
struct Node* graph[MAX_NODES];

이러한 방법들은 각각 장단점이 있으며, 그래프의 크기와 연결 관계에 따라 효율적인 방법을 선택할 수 있습니다.

참고 자료

  1. 그래프 이론 - 위키백과
  2. C 언어로 그래프를 표현하는 방법 - GeeksforGeeks