Menu
Coddy logo textTech

Implementation (Part 2)

Lição 6 de 9 do curso Ordenação Topológica - Algoritmos de Grafos da Coddy.

Agora, removemos repetidamente os vértices de grau de entrada 0 para construir a ordem.

challenge icon

Desafio

Médio

Agora construa a ordenação completa.

Escreva uma função chamada topologicalSort que recebe n e o array plano edges (direcionado u -> v), e retorna uma ordem topológica dos vértices.

Use o algoritmo de Kahn: calcule os graus de entrada (in-degrees), então repetidamente pegue o menor vértice com grau de entrada 0, adicione-o e reduza o grau de entrada de seus vizinhos de saída. As entradas para este desafio são acíclicas.

Pegar o menor vértice disponível a cada passo torna a resposta única.

Experimente você mesmo

#include <stdlib.h>

int* topologicalSort(int n, int* edges, int edges_size, int* returnSize) {
    // Escreva o código aqui
    *returnSize = 0;
    return edges;
}
quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

Todas as lições de Ordenação Topológica - Algoritmos de Grafos