Um grafo é uma estrutura G = (V,E), em que V é um conjunto finito não nulo de vértices ou nós e E é um conjunto de arestas ou arcos. Uma aresta é um par de vértices a = {v,w}, em que v e w ∈ V e a ∈ E. Existem inúmeras formas de representar computacionalmente um grafo, cada qual com suas vantagens e desvantagens em relação a tempo de implementação, uso de memória, gasto de processamento, e assim por diante.
OLIVEIRA, Pietro Martins de; Pereira, Rogério de Leon. Estrutura de Dados I. Maringá-Pr.: Unicesumar, 2019.
Você faz parte de uma equipe que vai implementar uma solução de grafo ponderado representado por uma lista de adjacência, como segue:
#include
#include
typedef struct adjacencia {
int vertice;
int peso;
struct adjacencia *prox;
}ADJACENCIA;
typedef struct vertice {
ADJACENCIA *cabeca;
}VERTICE;
typedef struct grafo {
int vertices;
int arestas;
VERTICE *adj;
}GRAFO;
Além de implementar o código, assinale a alternativa correta a respeito do grafo ponderado (com peso).
A alternativa correta a respeito do grafo ponderado (com peso) é que ele atribui um valor numérico a cada aresta do grafo, representando a distância, custo, tempo ou qualquer outra medida associada a essa aresta. Esses pesos podem ser utilizados em algoritmos de busca, como o algoritmo de Dijkstra, para encontrar o caminho mais curto entre dois vértices no grafo.
Para escrever sua resposta aqui, entre ou crie uma conta
Compartilhar