728x90
여러 개의 점들이 서로 복잡하게 연결되어 있는 관계를 표현한 자료구조
복잡한 네트워크망과 같은 모습
Graph의 구조
- 직접적인 관계가 있는 경우 두 점 사이를 이어주는 선이 있다
- 간접적인 관계라면 몇 개의 점과 선에 걸쳐 이어진다
- 하나의 점을 그래프에서는 정점(vertex)이고, 하나의 선은 간선(edge)이라고 한다
용어 정리
- 정점 (vertex) : 노드라고도 하며 데이터가 저장되는 그래프의 기본 원소
- 간선 (edge) : 정점 간의 관례를 나타낸다
- 인접 정점 (adjacent vertex) : 하나의 정점에서 간선에 의해 직접 연결되어 있는 정점
- 가중치 그래프 (weighted graph) : 연결의 강도가 얼마나 되는지 적혀있는 그래프
- 비 가중치 그래프 (unweighted graph) : 연결의 강도가 적혀 있지 않는 그래프
- 무(방)향 그래프 (undirected graph) : 방향이 없는 그래프
- 진입 차수 (in-degree) / 진출 차수 (out-degree) : 한 정점에 진입하고 진출하는 간선이 몇 개인지를 나타낸다
- 인접 (adjacency) : 두 정점 간에 간선이 직접 이어져 있다면 이 두 정점은 인접한 정점이다
- 자기 루프 (self loop) : 정점에서 진출하는 간선이 곧바로 자기 자신에게 진입하는 경우 (다른 정점을 거치지 않는다)
- 사이클 (cycle) : 한 정점에서 출발하여 다시 해당 정점으로 돌아갈 수 있다면 사이클이 있다고 표현한다
728x90
'개발일지 > 컴퓨터지식' 카테고리의 다른 글
시간 복잡도 Big-O (0) | 2022.09.28 |
---|---|
자료구조 Deque (0) | 2022.09.28 |
자료구조 트리 Tree (2) | 2022.09.25 |
자료구조 큐 Queue (0) | 2022.09.25 |
자료구조 스택 Stack (0) | 2022.09.25 |