Menu
Coddy logo textTech

Implementation (Part 2)

Lição 6 de 9 do curso Algoritmo de Dijkstra - Algoritmos de Grafos da Coddy.

Agora, o cálculo ganancioso do caminho mais curto.

challenge icon

Desafio

Médio

Agora construa o algoritmo completo.

Escreva uma função chamada dijkstra que receba n, o array plano edges (triplas, direcionadas, pesos não negativos) e um source, e retorne um array onde a posição v seja a distância mais curta de source até v. Use -1 para vértices que não podem ser alcançados.

Inicie todas as distâncias com um "infinito" grande, exceto a origem (source) em 0. Então, n vezes, finalize o vértice não visitado mais próximo e relaxe suas arestas de saída.

Experimente você mesmo

#include <stdlib.h>

int* dijkstra(int n, int* edges, int edges_size, int source, 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 Algoritmo de Dijkstra - Algoritmos de Grafos