dfs 3

그래프(Graph): 네트워크와 관계 데이터를 표현하는 강력한 자료구조

🔹 그래프란?1. 그래프(Graph)의 정의그래프(Graph)는 노드(Node, 정점)와 엣지(Edge, 간선)로 구성된 비선형 데이터 구조로, 객체 간의 관계를 표현하는 데 사용됩니다. 그래프는 소셜 네트워크, 지도 경로 탐색, 웹 크롤링, 네트워크 라우팅 등 다양한 분야에서 필수적인 자료구조입니다.✅ 그래프의 주요 특징:정점(Vertex, Node): 데이터를 저장하는 요소간선(Edge): 노드 간의 관계를 나타내는 연결선방향 그래프(Directed Graph, 유향 그래프)와 무방향 그래프(Undirected Graph, 무향 그래프)로 구분가중 그래프(Weighted Graph)와 비가중 그래프(Unweighted Graph)로 구분📌 그래프는 네트워크 구조를 모델링하는 데 최적화된 자료구조입..

IT이야기 2025.03.01

깊이 우선 탐색(Depth-First Search, DFS): 그래프 탐색 알고리즘

🔹 DFS란?1. 깊이 우선 탐색(Depth-First Search, DFS)의 정의깊이 우선 탐색(Depth-First Search, DFS)은 그래프를 탐색하는 알고리즘으로, 한 경로를 끝까지 탐색한 후 다시 돌아가 다른 경로를 탐색하는 방식입니다. DFS는 스택(Stack) 또는 재귀(Recursion)를 활용하여 구현되며, 미로 탐색, 경로 찾기, 백트래킹 등에 널리 활용됩니다.✅ DFS의 주요 특징:한 경로를 끝까지 탐색한 후, 더 이상 진행할 수 없으면 이전 노드로 돌아감(백트래킹)재귀 함수(Recursion) 또는 명시적 스택(Stack)을 사용하여 구현 가능BFS(너비 우선 탐색)와 달리 특정 경로를 먼저 탐색하는 방식O(V+E)의 시간 복잡도를 가짐 (V: 정점 수, E: 간선 수)📌..

IT이야기 2025.03.01

그래프(Graph): 네트워크와 관계 데이터를 표현하는 강력한 자료구조

🔹 그래프란?1. 그래프(Graph)의 정의그래프(Graph)는 노드(Node, 정점)와 엣지(Edge, 간선)로 구성된 비선형 데이터 구조로, 객체 간의 관계를 표현하는 데 사용됩니다. 그래프는 소셜 네트워크, 지도 경로 탐색, 웹 크롤링, 네트워크 라우팅 등 다양한 분야에서 필수적인 자료구조입니다.✅ 그래프의 주요 특징:정점(Vertex, Node): 데이터를 저장하는 요소간선(Edge): 노드 간의 관계를 나타내는 연결선방향 그래프(Directed Graph, 유향 그래프)와 무방향 그래프(Undirected Graph, 무향 그래프)로 구분가중 그래프(Weighted Graph)와 비가중 그래프(Unweighted Graph)로 구분📌 그래프는 네트워크 구조를 모델링하는 데 최적화된 자료구조입..

IT이야기 2025.03.01