T_era
DFS/BFS 문제를 풀면서 느낀 것 본문
DFS
- 경우의 수를 찾는 상황에서 주로 쓰게된다. ex) 티켓이 여러장 있을 때 전부 사용하게되는 경우의 수
- 재귀호출을 이용하면 좀 더 편하고 가독성 좋게 구현이 된다
- 트리 구조를 생각하면서 푸니까 잘 풀린다
BFS
- 최단경로를 찾는 상황에서 주로 쓰게된다
- 큐를 사용해 주변 데이터부터 살피는 것을 생각하며 풀게되니 잘 풀린다
- 재귀호출을 이용하면 메모리가 낭비가 심해지기 때문에 반복문을 사용하는 경우가 많다
'이론 > 알고리즘' 카테고리의 다른 글
| 그리디 알고리즘(탐욕법) (0) | 2025.04.29 |
|---|---|
| [JAVA] BFS(너비 우선 탐색)와 DFS(깊이 우선 탐색) (0) | 2025.04.23 |
| [JAVA] 재귀함수와 반복문의 차이 (0) | 2025.04.23 |
| [JAVA] 다이나믹 프로그래밍(DP) 이론 (0) | 2025.04.22 |
| [JAVA] Comparator를 람다식으로 사용하기 (0) | 2025.04.14 |