Ciao, devo risolvere il seguente esercizio.
Un grafo G di n nodi, orientato ed etichettato sugli archi da valori interi, può essere rappresentato da una lista di archi etichettati, ossia una lista di terne ordinate di interi (i;j;x),
tali che la coppia (i;j) rappresenta un arco orientato di G e x ne rappresenta l'etichetta.
Scrivere una funzione che, dati in imput un grafo orientato ed etichettato sugli archi da valori interi, rappresentato mediante liste di adiacenza, restituisca il medesimo grafo rappresentato con una lista di archi etichettati.
Ho risolto così:
codice:
#include <stdlib.h>
typedef struct arcoEtic { //liste di adiacenza
int v;
unsigned etic;
struct arcoEtic *next;
} *linkEtic;
typedef linkEtic *Tipografoetic;
typedef struct linkelem *Listagrafoetic; //lista di archi etichettati
struct link_elem{
unsigned v1,v2,x;
Listagrafoetic next;
}
Listagrafoetic converti(Tipografoetic g, unsigned numnodi){
int i, j;
........
da questo punto non so continuare, potreste risolverlo così io possa capire.
Mi aiutereste davvero molto perché tra qualche tempo ho l'esame e ancora mi blocco, mi rimane da scorrere le liste di adiacenza e riscrivere la lista di archi etichettati.
Vi ringrazio, ciao