알고리즘
[C++] 위상 정렬( Topology Sort )
위상 정렬( Topology Sort )이란위상 정렬이란 주어진 DAG( Directed Acyclic Graph )에서 간선의 방향에 따라 모든 정점을 나열하는 것을 말합니다.여기서, DAG란 순환 경로가 없는 방향 그래프를 말합니다. 그리고, 간선의 방향을 따른다는 뜻은,정점 A에서 B로 이어지는 간선이 있을 때, A가 B보다 먼저 나열되어야 한다는 뜻입니다. 예를 들어, 다음 그래프는 DAG입니다. 이때, 위상 정렬을 하면 3, 1, 2가 됩니다. 이렇게 정점들을 나열하는 것은, 작업들 중에서 먼저 수행해야 되는 작업 순으로 작업들을 나열하는 과정과 같습니다.그래서, 위상 정렬은 순환 경로가 있는 그래프에서는 성립되지 않습니다.먼저 나열해야 하는 정점을 지정할 수 없기 때문입니다. 이러한 위..
2024. 7. 12.