그래프 문제는 입력부터 다르다: 인접 리스트와 인접 행렬은 언제 무엇을 써야 할까
그래프 입력을 인접 리스트와 인접 행렬로 바꾸는 기준을 시간복잡도, 메모리, BFS/DFS 예제로 정리합니다. 간선 수와 연결 확인 방식에 따라 어떤 구조가 더 자연스러운지 단계적으로 설명하고 입력 실수까지 짚습니다.
그래프 입력을 인접 리스트와 인접 행렬로 바꾸는 기준을 시간복잡도, 메모리, BFS/DFS 예제로 정리합니다. 간선 수와 연결 확인 방식에 따라 어떤 구조가 더 자연스러운지 단계적으로 설명하고 입력 실수까지 짚습니다.
BFS visited를 큐에 넣을 때 체크하는 이유와 꺼낼 때 체크할 때 생기는 중복 enqueue 문제를 예제로 설명합니다.
다익스트라 알고리즘을 쉽게 설명합니다. BFS가 되는 최단거리와 안 되는 최단거리 차이, 우선순위 큐가 왜 필요한지 코딩테스트 기준으로 정리합니다.
BFS 문제 풀이 패턴을 정리합니다. 최단거리, 레벨 탐색, 상태 전이 문제에서 어떤 신호가 보이면 BFS를 떠올려야 하는지 코딩테스트 기준으로 설명합니다.
다익스트라와 BFS 차이를 ‘거리의 정의’ 기준으로 쉽게 정리합니다. 무가중치 최단 경로, 가중치 그래프, 0-1 BFS, 음수 가중치 예외까지 실전 선택 감각 중심으로 설명합니다.
BFS와 DFS 차이를 문제 풀이 기준으로 정리합니다. 왜 BFS는 무가중치 최단거리에 맞고 DFS는 경로 존재 확인과 구조 탐색에 맞는지, 실전에서 어떻게 고를지 쉽게 설명합니다.