그래프
여러 개체들이 연결되어 있는 자료구조
탐색
특정 개체를 찾기 위한 알고리즘
대표적 문제 유형
- 경로탐색 유형 (최단거리, 시간)
- 네트워크 유형 (연결)
- 조합 유형 (모든 조합 만들기)
DFS(Depth-Firsh Search) 깊이 우선 탐색
- 한 놈만 끝까지 패는 유형
구현 방법
- 재귀함수가 가장 일반적
- 한 가지 방법을 끝까지 다 해보고 다음 방식 동작
BFS(Breadth-First Search) 너비 우선 탐색
- 여러 놈을 한대씩 때리면서 가는 유형
구현 방법
- Queue / LinkedList 사용이 가장 보편적
DFS/BFS 알고리즘 판단 방법
- 자신있는 알고리즘으로 탐색
- DFS의 장점: 하나의 조합을 완성해서 정답과 비교하는 방식임으로 동작 검증이 쉽다
- BFS의 장점: 시간복잡도가 낮다(효율성 TC에 유리)
참조
'CS > DSA' 카테고리의 다른 글
[자료구조] Array (배열) & LinkedList (연결리스트) (0) | 2022.08.01 |
---|