my devlog;

  • 홈
  • 태그
  • 방명록

위상정렬 2

DAG와 위상정렬(topological sort)

DAG(Directed Acyclic Graph) : 사이클이 없는 방향 그래프. DAG에서 에지 가 있다면 정점 u는 정점 v를 선행함. 위상 정렬(topological sort) : 방향 그래프 정점들의 선행 순서를 위배하지 않으면서 모든 정점을 순서대로 나열하는 것. 선행관계가 없는 것은 뭐가 먼저 나오든지 상관이 없기 때문에 위상 정렬 결과는 여러 가지가 존재할 수 있음. ▷ 알고리즘 1. 진입차수가 0인 임의의 정점(선행자가 없는 정점)을 큐(혹은 스택)에 삽입 2. 정점 개수만큼 시행하는 반복문 생성 3. 반복문 내부에서는, 큐에서 정점을 하나씩 꺼내어 출력하고 출력한 정점에 붙어있는 에지들을 제거하여 진입차수 재계산 4. 진입차수를 재계산하여 진입차수가 0이 된 것은 큐에 삽입 위상정렬이 불..

CS/알고리즘 2021.04.06

백준/2252번(위상 정렬)/C++

위상 정렬을 구현해볼 수 있는 기본 문제 주의할 점이 딱히 없다. #include #include #include #define MAX 32010 using namespace std; int N, M; int inDegree[MAX]; vector a[MAX]; void input() { cin >> N >> M; for (int i = 0; i > A >> B; a[A].push_back(B); inDegree[B]++; } } void topologySort() { int result[MAX]; queue q; for (int i = 1; i

STUDY/코딩테스트 연습(PS) 2021.02.19
1
더보기
프로필사진

¡ 개발자로 성장하기 !

  • 분류 전체보기 (85)
    • WEB (3)
      • Spring & Spring boot (3)
    • CS (41)
      • 자료구조(DS) (11)
      • 알고리즘 (11)
      • 기계학습(ML) (3)
      • 네트워크 (2)
      • 운영체제(OS) (10)
      • 데이터베이스(DB) (4)
      • 그래픽스 (0)
      • 컴퓨터구조 (0)
      • 컴파일러 (0)
    • STUDY (35)
      • Books (13)
      • 코딩테스트 연습(PS) (22)
    • LOG (2)
      • 프로젝트 (1)
      • 대회 & 해커톤 (1)

Tag

재귀, clean code, 스택, 큐, 프로세스 문맥, 그리디, 프로그래머스, 탐색 알고리즘, 덱, 위상정렬, 차수 표기법, 백준, 기본 자료구조, MySQL, dfs, 투 포인터, 문맥 교환, 정렬 알고리즘, SMTP, 최단 경로 알고리즘,

최근글과 인기글

  • 최근글
  • 인기글

Archives

Calendar

«   2025/06   »
일 월 화 수 목 금 토
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30

방문자수Total

  • Today :
  • Yesterday :

Copyright © Kakao Corp. All rights reserved.

  • 깃허브

티스토리툴바