1. 개념 정리1.1 문제 정의유향 그래프에서 “사이클이 존재하는가(즉, 순환참조가 있는가)?”를 묻는 문제입니다. 만약 사이클이 없다면 그 그래프는 DAG이고, 순환 참조 문제(예: A → B → C → A)로부터 자유롭습니다. (GeeksforGeeks)예컨대, 의존성 그래프(모듈간, 이벤트간, 반응형 흐름간)에서 순환 참조가 생기면 무한 루프나 예측불가능한 상태를 만들 수 있기 때문에, 게임 개발 등 반응형 프로그래밍 환경에서도 이 검사가 중요합니다.1.2 왜 DFS + 재귀 스택 방식인가?DFS 진행 중에 **현재 탐색 경로상에 있는 노드(recursion stack)**에 다시 도달하면, 그 경로상에서 부모 → … → 자식 → 다시 부모(혹은 조상)로 이어지는 간선(back edge)이 있다는 ..