Struttura dei dati del grafico e Algorithms (Esempio)

Cos'è un grafico nella struttura dei dati?

Un grafico è una struttura dati non lineare costituita da vertici e spigoli, dove i vertici contengono informazioni o dati e gli spigoli funzionano come collegamento tra coppie di vertici.

Viene utilizzato per risolvere problemi reali come trovare il percorso migliore per raggiungere la destinazione e il percorso per le telecomunicazioni e i social network. Gli utenti sono considerati un nodo nel grafico e i fili sono i bordi che collegano gli utenti.

Se gli spigoli sono rappresentati come E e i vertici sono rappresentati come V, allora il grafico G può essere scritto come l'insieme di vertici e spigoli, come ad esempio G (V, E)

Esempio di grafico nella struttura dei dati

Ecco un semplice esempio di struttura dei dati del grafico:

Esempio di grafico nella struttura dei dati

È un semplice grafico non orientato (un tipo di grafico). Qui l'insieme dei vertici è: {A, B, C,D,E,F}. Due vertici creano un bordo. Ad esempio, A e B sono collegati da un bordo. Tuttavia, A e F non sono collegati ad alcun arco.

Terminologie dei grafici nella struttura dei dati

Di seguito sono riportati alcuni termini importanti utilizzati nella struttura dei dati grafici:

Termine Descrizione
Vertice Tutti gli elementi dati sono chiamati vertice o nodo. Nell'immagine sopra, A, B, C, D ed E sono i vertici.
Bordo (arco) I collegamenti tra due nodi o vertici sono chiamati bordo (arco). Ha due estremità ed è rappresentato come (vertice iniziale, vertice finale).
Bordo non orientato È un vantaggio bidirezionale.
Bordo diretto È un bordo unidirezionale.
Bordo ponderato Un vantaggio con valore su di esso.
Laurea In Graph, il numero di archi collegati a un vertice è chiamato grado.
Ingrado Il numero totale di spigoli entranti collegati a un vertice.
Grado superato Il numero totale di archi uscenti collegati a un vertice.
Auto-ciclo Un arco si dice autoanello se i suoi due estremi coincidono.
Adiacenza I vertici si dicono adiacenti se hanno uno spigolo connesso.

Tipi di grafici nella struttura dei dati

Ecco l'elenco dei più comuni tipi di grafici nella struttura dati:

  • Grafico diretto
  • Grafico non orientato
  • Grafico ponderato
  • Grafico bidirezionale
  • Grafico infinito
  • Grafico nullo
  • Grafico banale
  • Grafico multiplo
  • Grafico completo
  • Grafico connesso
  • Grafico ciclico
  • Grafico aciclico diretto (DAG)
  • Grafico del ciclo
  • Grafico bipartito
  • Grafico di Eulero
  • Grafico di Hamilton

Applicazioni della struttura dei dati del grafico

Un grafico ha molti casi d'uso. Esistono molti algoritmi che utilizzano molto i grafici. Ecco alcune delle applicazioni del grafico:

  • Google Maps utilizza i grafici per trovare l'intersezione di due strade e calcolare la distanza tra due posizioni.
    Per esempio, Dijkstra, per trovare la distanza più breve tra la posizione di origine e quella di destinazione.
  • Facebook utilizza i grafici per trovare l'amico comune degli utenti. Il suo algoritmo considera ogni utente come un nodo di un grafico.
  • Per l'allocazione delle risorse viene utilizzato il DAG (Direct Acyclic Graph). Controlla la dipendenza delle risorse.
  • Il motore di ricerca di Google utilizza i grafici per creare la classifica dei siti web.
  • Un dispositivo di mappatura utilizza la struttura dei dati del grafico.
  • router e il protocollo di t utilizza il grafico per apprendere il percorso del percorso di destinazione.