그래프 판정

그래프 방문 상태 판정

연결 요소, 방향 사이클, 위상 정렬 검사는 모두 방문 배열을 쓰지만 상태 값이 뜻하는 실패 조건이 다릅니다.

컴포넌트

새 시작점마다 묶음 증가

새 시작점마다 BFS/DFS를 돌려 연결 묶음 수를 증가시킵니다.

방향 사이클

방문 중 복귀를 감지

방문 중 상태로 되돌아오는 간선을 만나면 순환을 판정합니다.

위상 가능

처리 수로 DAG 확인

진입차수 0 큐가 모든 정점을 처리하면 DAG 조건이 유지됩니다.

상태 이름
상태 이름 unseen, visiting, done처럼 값의 의미를 코드와 주석에 맞춥니다.
간선 해석 무방향 부모 간선과 방향 back edge를 혼동하지 않습니다.
실패 기록 사이클을 만든 정점이나 처리되지 않은 정점을 로그로 남깁니다.