본문 바로가기
개념공부

[Graph] 위상정렬

by 29살아저씨 2021. 9. 28.
반응형

- 위상정렬

  • 어떤 일을 하는 순서를 찾는 알고리즘으로, 큐에 들어있는것들은 간선의 개수가 0개인 것이고, 큐에서 빼서 체크할 때에도 들어오는 간선의 개수가 0인 것을 넣는다.

- 기본적으로 필요한 변수

  • PriorityQueue<Node> or Queue<Node> : 정점들을 저장하기 위한 자료구조
  • connect[] : i에 연결된 간선들의 수를 저장하기 위한 배열
  • ArrayList<Node> : 각 정점이 가리키는 노드를 저장하기 위한 인접리스트 

- 문제푸는 팁(오로지 내 생각)

  •  보통 어떤일의 순서를 출력하시오, 두 정점에 대한 선행관계, 우선순위가 주어진다.

 

- 관련된 문제 해설

 

백준 1766. 문제집

🅰 백준 1766. 문제집 1766번: 문제집 첫째 줄에 문제의 수 N(1 ≤ N ≤ 32,000)과 먼저 푸는 것이 좋은 문제에 대한 정보의 개수 M(1 ≤ M ≤ 100,000)이 주어진다. 둘째 줄부터 M개의 줄에 걸쳐 두 정수의

thsd-stjd.tistory.com

 

백준 2252. 줄 세우기

🅰 백준 2252. 줄 세우기 2252번: 줄 세우기 첫째 줄에 N(1 ≤ N ≤ 32,000), M(1 ≤ M ≤ 100,000)이 주어진다. M은 키를 비교한 회수이다. 다음 M개의 줄에는 키를 비교한 두 학생의 번호 A, B가 주어진다. 이

thsd-stjd.tistory.com

 

백준 2056. 작업

🅰 백준 2056. 작업 2056번: 작업 수행해야 할 작업 N개 (3 ≤ N ≤ 10000)가 있다. 각각의 작업마다 걸리는 시간(1 ≤ 시간 ≤ 100)이 정수로 주어진다. 몇몇 작업들 사이에는 선행 관계라는 게 있어서

thsd-stjd.tistory.com

 

반응형

댓글