입력: 정점 개수 N, 간선 개수 M, 시작 정점 V

1. 그래프를 저장할 리스트 graph를 만든다
2. 방문했는지 체크할 visited 배열을 만든다 (모두 false로 시작)

3. M번 반복하면서:
   a, b를 입력받고
   graph[a]에 b 추가
   graph[b]에 a 추가

4. 모든 정점에 대해:
   graph[i]를 작은 번호부터 방문하도록 정렬한다

5. 스택을 하나 만든다
6. 시작 정점 V를 스택에 넣는다

7. 스택이 비어있지 않은 동안 반복한다:
   7-1. 스택에서 맨 위 정점 v를 꺼낸다

   7-2. 만약 v가 이미 방문되었다면:
        다음 반복으로 넘어간다

   7-3. v를 방문했다고 표시한다
        v를 출력한다

   7-4. v와 연결된 모든 정점을 뒤에서부터 확인한다:
        만약 next 정점을 아직 방문하지 않았다면
        스택에 next를 넣는다

Embed on website

To embed this project on your website, copy the following code and paste it into your website's HTML: