탐색 알고리즘


2차원 지도 탐색

백준 2178 미로 탐색 문제

미로의 각 칸이 탐색 대상 노드이기 때문에 BFS로 풀어야 한다.




최장거리를 구현해보자.

촤장거리 탐색도 BFS로 구현해야 한다.

목적지에 도착하자마자 distance를 리턴하는게 아니다. 도착하자마자 리턴하면 최단 거리가 된다.
마지막 distance 값이 최대거리이기 때문에 queue가 empty가 될 때까지 탐색을 계속한 후
max 값을 리턴해야 한다.




반복문으로 DFS 구현

반복문으로 깊이 우선 탐색을 구현하라.
last in, first out => BFS
last in, last out => DFS
깊이 우선 탐색의 리턴값 distance는 최단거리가 아니다.




비숫한 문제 : 프로그래머스 카카오프렌즈 컬러링북

스크린샷 2020-11-11 오후 2 01 01

입력 예제를 직접 그려보면 영역은 이렇게 나타난다.

백준 문제를 풀고 이 문제를 풀어보니 쉽게 이해할 수 있었다.
목적지 없이 전부 탐색해야 한다는 점과 색이 같으면 Node를 생성해 Queue에 넣어준다는 점만 다르고 풀이 방식은 똑같다.




풀어볼 문제 목록