---
id: P-REINFORCE-AUTO-BDFS-001
category: "[[10_Wiki/💡 Topics/AI]]"
confidence_score: 0.99
tags: [auto-reinforced, bfs, dfs, algorithms, graph-search, tree-traversal, problem-solving]
last_reinforced: 2026-04-20
---

# [[BFS vs DFS]]

## 📌 한 줄 통찰 (The Karpathy Summary)
> "지식 탐색의 두 가지 갈래: 현재 층위의 모든 가능성을 먼저 훑으며 최단 경로를 찾는 '발 넓은' 너비 우선 탐색(BFS)과, 한 가지 가능성을 끝까지 파고들어 바닥을 확인하는 '집요한' 깊이 우선 탐색(DFS)의 지적 대비."

## 📖 구조화된 지식 (Synthesized Content)
너비 우선 탐색(BFS)과 깊이 우선 탐색(DFS)은 그래프나 트리 구조를 순회하는 가장 기초적인 알고리즘입니다.

1.  **BFS (Breadth-First Search)**:
    *   **동작**: 루트 노드에서 가까운 노드부터 차례대로 방문 (Queue 사용).
    *   **장점**: 최단 경로(Shortest path)를 찾는 데 최적임.
    *   **단점**: 모든 자식 노드를 메모리에 담아야 하므로 공간 복잡도가 높음.
2.  **DFS (Depth-First Search)**:
    *   **동작**: 한 분기를 결정하면 그 분기의 끝(Leaf)까지 가본 후 뒤로 돌아옴 (Stack 또는 Recursion 사용).
    *   **장점**: 메모리 가성비가 좋고, 경로상에 정답이 깊이 있을 때 유리함.
    *   **단점**: 얻은 경로가 최단 경로라는 보장이 없으며 무한 루프 위험이 있음. (Backward-Reasoning과 연결)

## ⚠️ 모순 및 업데이트 (Contradictions & RL Update)
- **과거 데이터와의 충돌**: 과거에는 문제 유형에 따라 하나를 선택하는 정적인 알고리즘 정책이었으나, 현대 AI 정책(MCTS 등)은 두 방식을 확률적으로 혼합하거나 보상에 따라 동적으로 깊이와 너비를 결정하는 '적응적 탐색 정책'으로 진화함(RL Update).
- **정책 변화(RL Update)**: 거대 언어 모델의 생각의 사슬(Chain of Thought) 추론 정책에서, 하나의 답변에 함몰되지 않고 여러 가지 추론 가지를 BFS적으로 생성해 비교하는 'Tree-of-Thoughts' 기법이 고난도 문제 해결의 핵심 정책이 됨.

## 🔗 지식 연결 (Graph)
- [[Binary-Search]], [[Backward-Reasoning]], [[Search-Optimization]], [[Analysis]], [[Pattern Recognition]]
- **Modern Tech/Tools**: Pathfinding algorithms in GPS, Crawling bots, Game AI (Minimax).
---
