DFS -> 스택
BFS -> 큐
원소하나를 pop하고 인접한 데이터를 살펴본다는 알고리즘 흐름은 똑같지만 방문 순서에 있어서 큰 차이가 있음
BFS는 주변으로 동시에 퍼져나가기 때문에 시작위치부터 각 목적지까지의 거리를 측정할 수 있지만 DFS는 한 방향으로 막힐 때 까지 직진을 하다가 다시 시작위치로 가서 다른 방향으로 이동하는 방식이기 때문에 인접한 칸이 현재 보는 칸보다 1만큼 더 떨어져있다라는 성질이 BFS에서는 성립하지 않음
DFS와 BFS 둘 다 Flood Fill(이동가능한 구역을 채우는 것) 문제를 해결 할 수 있지만 거리 측정의 경우 BFS로만 해결이 가능하기 때문에 대부분 BFS를 사용해서 문제를 푼다.
DFS는 스택을 써서 다차원 배열의 순회를 처리하는 알고리즘이고, 나중에 그래프와 트리라는 자료구조를 배울 때 DFS를 사용한다 정도로만 기억