[자료구조] 그래프를 코드로 나타내는 방법 (feat. C++)
자료구조와 알고리즘2022. 4. 25. 16:05[자료구조] 그래프를 코드로 나타내는 방법 (feat. C++)

그래프란? https://sanhan.tistory.com/entry/자료구조-그래프와-트리 1. 인접 행렬 (Adjacency Matrix) 로 표현 행렬에 간선 정보를 담는 방식. 각 행이 간선의 시작 노드를 나타낸다. (0번째 행은 0번 노드에서 시작해서 다른 노드로 향하는 간선들의 정보이다.) 행렬값: 연결되었으면 1 (가중치가 있다면 가중치를 저장), 그렇지 않으면 0 방향 그래프 코드 - 2차원 배열 더보기 #include using namespace std; void addEdge(int** matrix, int from, int to){ matrix[from][to] = 1; } int main() { int vn = 4; // 정점(Node, Vertex)의 개수 int **graph =..

[자료구조] 그래프와 트리
자료구조와 알고리즘2022. 4. 25. 15:57[자료구조] 그래프와 트리

그래프 인물 관계도, 먹이사슬, 지하철 노선도, 전국 도로망 등 일상 생활에서 연결 관계를 표현하거나 이해하는데 매우 많이 활용된다. 그래프의 구성 요소 ⁃ 정점 (Node, Vertex) 그림에서 놀이기구에 해당한다. ⁃ 간선 (Edge) 놀이기구 사이의 경로에 해당한다. 그래프의 방향성 ⁃ 방향 그래프 (Directed Graph) ⁃ 무방향 그래프 (Undirected Graph, 양방향 그래프) 방향성이 없다는 건 어느 쪽으로든 갈 수 있다는 의미. 그래프의 순환성 그래프 내 어떤 부분이라도 순환하는 부분이 있다면 순환 그래프, 한 군데도 없다면 비순환 그래프이다. ⁃ 순환 그래프 (Cyclic Graph) ⁃ 비순환 그래프 (ACyclic Graph) 그래프의 연결요소 (Connected Com..

image