목차

학습목표

✔️ 그래프의 기본 개념 이해

✔️ 그래프의 종류 구분

✔️ 그래프 탐색 방법의 이해와 구현

✔️ 인접 행렬과 인접 리스트를 이용한 그래프 구현

그래프 (Graph)

✔️ 정점과 간선으로 이루어진 자료구조 (Cyclic)

✔️ 그래프의 용도

그래프 구조

스크린샷 2023-09-02 오후 2.22.29.png

✔️ 정점(Vertex): 각 노드

✔️ 간선(Edge): 노드와 노드를 연결하는 선 (link, branch)

✔️ 인접 정점(Adjacent vertex): 간선 하나를 두고 바로 연결된 정점

✔️ 정점의 차수(Dgree):

✔️ 진입 차수(In-degree): 방향 그래프에서 외부에서 오는 간선의 수

✔️ 진출 차수(Out-degree): 방향 그래프에서 외부로 나가는 간선의 수

✔️ 경로 길이(Path length): 경로를 구성하는데 사용된 간선의 수

✔️ 단순 경로(Simple path): 경로 중에서 반복되는 정점이 없는 수

✔️ 사이클(Cycle): 단순 경로의 시작 정점과 끝 정점이 동일한 경우

그래프의 특징과 트리와의 차이

그래프 트리
개요 노드와 간선으로 이루어진 자료구조 그래프의 한 종류
방향성 방향 그래프, 무방향 그래프 방향 그래프
사이클 Cyclic Acyclic
모델 네트워크 모델 계층 모델
루트 노드 루트 노드 X 최상위 노드
부모-자식 부모-자식 관계 X 인접한 상하위 노드
간선 수 그래프에 따라 간선 개수 다름 N개의 노드로 구성된 트리의 간선 수는 N-1개
순회 DFS, BFS Pre-, In-, Post-order / Level-order
경로 2개 이상의 경로 가능 두 노드 간의 경로는 1개