그래프 문제는 입력부터 다르다: 인접 리스트와 인접 행렬은 언제 무엇을 써야 할까
그래프 입력을 인접 리스트와 인접 행렬로 바꾸는 기준을 시간복잡도, 메모리, BFS/DFS 예제로 정리합니다. 간선 수와 연결 확인 방식에 따라 어떤 구조가 더 자연스러운지 단계적으로 설명하고 입력 실수까지 짚습니다.
그래프 입력을 인접 리스트와 인접 행렬로 바꾸는 기준을 시간복잡도, 메모리, BFS/DFS 예제로 정리합니다. 간선 수와 연결 확인 방식에 따라 어떤 구조가 더 자연스러운지 단계적으로 설명하고 입력 실수까지 짚습니다.
백트래킹이란 무엇인가를 코딩테스트 기준으로 쉽게 정리합니다. DFS와의 차이, 가지치기, 복구, 순열과 N-Queen 같은 대표 예시까지 단계적으로 설명합니다.
SCC를 쉽게 설명합니다. 방향 그래프에서 서로 왕복 가능한 정점 덩어리를 왜 묶는지, condensation graph가 왜 DAG가 되는지, Kosaraju와 Tarjan 감각까지 단계적으로 정리합니다.
DFS와 백트래킹 차이를 쉽게 설명합니다. 단순 순회와 조합 탐색이 어떻게 다르고, 언제 가지치기까지 해야 하는지 코딩테스트 기준으로 정리합니다.
BFS와 DFS 차이를 문제 풀이 기준으로 정리합니다. 왜 BFS는 무가중치 최단거리에 맞고 DFS는 경로 존재 확인과 구조 탐색에 맞는지, 실전에서 어떻게 고를지 쉽게 설명합니다.
스택과 큐 차이를 정의 암기 대신 사용 감각으로 설명합니다. 콜 스택, undo, DFS와 BFS, 메시지 처리 대기열을 통해 언제 스택이 자연스럽고 언제 큐가 자연스러운지 한 번에 정리합니다.