깊이 우선 탐색 (Depth-first search; DFS)
작성 예정
구현 관련
Recursive or Iterative?
원하는 동작을 가장 간명하고 직관적으로 구현하는 방법은 재귀적으로 짜는 방식이다.
방문만 처리할때에는 스택을 써서 비재귀적으로 구현할수 있다
비재귀적으로 방문과 퇴각을 모두 처리할때에는 노드의 스택과 iterater의 스택을 같이 사용해서 구현해야 한다. 코드가 좀더 복잡해진다.
python 3.11 기준에서 속도나 체크해보자.