Grafi: introduzione. Definizioni: che cosa sono i grafi. Definizione
|
|
- Giuseppa Tarantino
- 4 anni fa
- Visualizzazioni
Transcript
1 Grafi: introduzione e rappresentazione efinizioni: che cosa sono i grafi Un grafo G=(V,) consiste in: un insieme V di vertici (o nodi) un insieme di coppie di vertici, detti archi o spigoli: ogni arco connette due vertici sempio 1: V={persone che vivono in Italia}, ={coppie di persone che si sono strette la mano} sempio 2: V={persone che vivono in Italia}, ={(x,y) tale che x ha inviato una mail a y}
2 sempio 1: relazione simmetrica sempio 2: relazione non simmetrica n = numero di vertici m = numero di spigoli Terminologia (1/2) grafo non orientato grafo orientato L ed I sono adiacenti (L,I) è incidente a L I ha grado 4: δ(i)=4 δ(v)=2m v V Terminologia (2/2) < L, I,,,, > è un cammino di lunghezza 5 nel grafo Non è il più corto cammino tra L ed La lunghezza del più corto cammino tra due vertici si dice distanza: L ed hanno distanza 4 efinizioni: che cosa sono i grafi (una presentazione piu dettagliata)
3 OS SRVONO I GRI? Un esempio: il problema dei ponti di Königsburg È possibile partire da e ritornare in attraversando tutti i ponti esattamente una volta? OS SRVONO I GRI? Un altro esempio Problema: Supponiamo di dover collegare tre abitazioni 1, 2 e 3 tramite tubature per fornirle di cqua, Gas ed lettricità. Se assumiamo che le tubature vadano posizionate alla stessa profondità, è possibile offrire la fornitura a tutte le abitazioni senza far incrociare le tubature? cqua Gas lettricità Un grafo G è una coppia di elementi <V, > dove: V è un insieme detto insieme dei vertici è un insieme detto insieme degli archi ( VxV) Un arco quindi è una coppia di vertici (v,w), cioè v V e w V V = {,,,,, } ome denotiamo gli archi?
4 se è un insieme di coppie non ordinate di vertici il grafo e detto non orientato V = {,,,,, } = {(,), (,), (,), (,), (,), (,)} (,) e (,) denotano lo stesso arco se è un insieme di coppie ordinate di vertici il grafo e detto orientato V = {,,,,, } ={<,>, <,>, <,>, <,>, <,>, <,>, <,>} <,> e <,> denotano due archi diversi In un grafo orientato, un arco <w,v> si dice incidente da w in v <,> è incidente da a <,> è incidente da a <,> è incidente da a
5 Un vertice w si dice adiacente a v se e solo se <v, w>. è adiacente ad è adiacente a e a è adiacente a e viceversa NON è adiacente a ne a NON è adiacente ad alcun vertice In un grafo non orientato la relazione di adiacenza tra vertici è simmetrica è adiacente a e viceversa è adiacente a e viceversa NON è adiacente ad alcun vertice efinizioni In un grafo non orientato: il grado di un vertice è il numero di archi che da esso si dipartono In un grafo orientato: il grado entrante (uscente) di unvertice è il numero di archi incidenti in (da) esso il grado di un vertice è la somma del suo grado entrante e del suo grado uscente
6 ssociamo ad ogni arco un peso (o costo). efiniamo grafo pesato la coppia <G, W>, dove W e la funzione peso, W: R, dove R è l insieme dei numeri reali. s., W(, ) = 3, 4 W(,) = 2.3, 3 ecc. W(,) = Sia G = (V, ) un grafo. Un sottografo di G è un grafo H = (V*, *) tale che V* V e * (e poiché H è un grafo, deve valere che * V* V*). s., V* = {,, }, * = {(, )}. Sia G = (V, ) un grafo. Un cammino nel grafo è una sequenza di vertici <w 1, w 2,..., w n > tale che (w i, w i+1 ) per 1 i n 1. s. <,,, > è un cammino nel grafo
7 Il cammino <w 1, w 2,..., w n > contiene i vertici w 1, w 2,, w n e gli archi (w 1,w 2 ) (w 2,w 3 )...(w n-1,w n ). La lunghezza del cammino è il numero totale di archi che collegano i vertici della sequenza (uno in meno del numero di vertici). s. la unghezza del cammino <,,, > è 3. sempio: in un grafo orientato s., <,,, > è un cammino in questo grafo orientato, ma... <,,, > NON è un cammino, poiché <, > non è un arco. Un cammino si dice semplice se tutti i suoi vertici sono distinti (compaiono una sola volta nella sequenza), eccetto al più il primo e l ultimo che possono essere lo stesso. s. il cammino <,,, > è semplice ma il cammino <,,,,, > NON è semplice, poiché è ripetuto.
8 Se esiste un cammino p tra i vertici v e w, si dice che w è raggiungibile da v tramite p v w p s.: è raggiungibile da e viceversa s.: è raggiungibile da ma non viceversa Se G è un grafo non orientato, definiamo G connesso se esiste un cammino da ogni vertice ad ogni altro vertice. d es. questo grafo non orientato è connesso.
9 d es. questo grafo non orientato NON è connesso. Se G è un grafo orientato, definiamo G fortemente connesso se esiste un cammino da ogni vertice ad ogni altro vertice. d es. questo grafo orientato è fortemente connesso. d es. questo grafo orientato NON è fortemente connesso. Infatti, non esiste cammino da a.
10 efiniamo debolmente connesso un grafo orientato tale che il grafo ottenuto da esso dimenticando la direzione degli archi è connesso. d es. questo grafo orientato non è fortemente connesso, ma è debolmente connesso Un ciclo in un grafo è un cammino <w 1, w 2,, w n > di lunghezza almeno 1, tale che w 1 = w n. s.: il cammino <,,,,, > è un ciclo. Un grafo senza cicli è detto aciclico. d es. questo grafo orientato non è aciclico,
11 Un grafo orientato aciclico è spesso chiamato G (irected cyclic Graph). Un grafo completo è un grafo che ha un arco tra ogni coppia di vertici. d es. questo grafo NON è completo d es. questo grafo è completo
12 Suppomiano che G = (V, ) sia completo. É possibile esprimere come funzione di V? s. di grafo completo Questo grafo ha V = 5 vertici e = 10 archi. Grafi ompleti V 1 0 V Grafi ompleti V V
13 Grafi ompleti V V ? V Per ottenere un grafo completo con n vertici da un grafo completo con n 1 vertici, si devono aggiungere n 1 nuovi archi... quindi il numero totale di archi, quando V = n è 2 n 1 n( n 1) V V i = = i= Un albero libero è un grafo non orientato connesso, aciclico. d es. questo è un albero libero libero si riferisce al fatto che non esiste un vertice designato ad essere la radice
14 Se qualche vertice è designato ad essere la radice, otteniamo un albero radicato. radice Un grafo non orientato aciclico ma non connesso, prende il nome di foresta. d es. questa è una foresta. ontiene tre alberi liberi. K G H I L J d es. questo grafo contiene un ciclo. Perciò non é un né albero libero né una foresta. K L H G I J
15 Strutture dati per rappresentare grafi Grafi non orientati Grafi orientati
16 Prestazioni della lista di archi su grafi non orientati?? Prestazioni delle liste di adiacenza su grafi non orientati??? Prestazioni della matrice di adiacenza su grafi non orientati
17 Strutture dati per rappresentare grafi (ulteriori dettagli su matrici di adiacenza e liste di adiacenza) Rappresentazione con matrice di adiacenza di un grafo non orientato M(v, w) = 1 se (v, w) Spazio: V 2 0 altrimenti Rappresentazione con liste di adiacenza di un grafo non orientato L(v) = lista di w, tale che (v, w), per v V a b Spazio: a V + 2 b
18 Rappresentazione con matrice di adiacenza di un grafo orientato Rappresentazione con liste di adiacenza di un grafo orientato Spazio: a V + b a b sempio di rappresentazione con matice di adiacenza di un grafo PSTO non orientato =
19 sempio di rappresentazione con liste di adiacenza di un grafo PSTO non orientato Riepilogo (1/2) oncetto di grafo e terminologia iverse strutture dati per rappresentare grafi nella memoria di un calcolatore Riepilogo (2/2) Matrice di adiacenza Spazio richiesto O( V 2 ) Verificare se i vertici u e v sono adiacenti richiede tempo O(1) datta per grafi densi, in cui è dell ordine di V 2 Liste di adiacenza Spazio richiesto O( + V ) Verificare se i vertici u e v sono adiacenti richiede tempo O( V ) datta per grafi sparsi, in cui è molto minore di V 2
Bioinformatica. Grafi. a.a Francesca Cordero. Grafi Bioinformatica
fcordero@di.unito.it Introduzione cknowledgement Lucidi da. Horváth,. emetrescu et al, lgoritmi e strutture dati, McGraw-Hill 3 efinizione: che cosa sono i grafi? definizione astratta: un grafo G = (V,)
DettagliAlgoritmi e Strutture Dati
Algoritmi e Strutture Dati Capitolo 12 Grafi e visite di grafi Camil Demetrescu, Irene Finocchi, Giuseppe F. Italiano Definizione Un grafo G=(V,E) consiste in: - un insieme V di vertici (o nodi) - un insieme
DettagliAppunti del corso di Informatica 1 (IN110 Fondamenti) 7 Grafi e alberi: introduzione
Università di Roma Tre Dipartimento di Matematica e Fisica Corso di Laurea in Matematica Appunti del corso di Informatica (IN0 Fondamenti) Grafi e alberi: introduzione Marco Liverani (liverani@mat.uniroma.it)
DettagliAlgoritmi e Strutture Dati
Algoritmi e Strutture Dati Grafi e visite di grafi Fabio Patrizi 1 Grafo: definizione Un grafo G=(V,E) consiste in: - un insieme V di vertici (o nodi) - un insieme E di coppie di vertici, detti archi (o
DettagliAlgoritmi e Strutture Dati Grafi. Daniele Loiacono
lgoritmi e Strutture ati Grafi Riferimenti 2 Questo materiale è tratto dalle trasparenze del corso lgoritmi e Strutture ati del prof. lberto Montresor dell Università di Trento. (http://www.dit.unitn.it/~montreso/asd/index.shtml)
DettagliRichiami di matematica discreta: grafi e alberi. Paolo Camurati Dip. Automatica e Informatica Politecnico di Torino
Richiami di matematica discreta: grafi e alberi Paolo Camurati Dip. Automatica e Informatica Politecnico di Torino Grafi Definizione: G = (V,E) V: insieme finito di vertici E: insieme finito di archi,
DettagliGrafi diretti. Un grafo diretto (o grafo orientato) G è una coppia (V,E) dove. V è u n i n s i e m e d i nodi (o vertici);
Algoritmi e Strutture di Dati II 2 Grafi diretti Un grafo diretto (o grafo orientato) G è una coppia (V,E) dove V è u n i n s i e m e d i nodi (o vertici); E µ V V è u n i n s i e m e d i archi. Denotiamo
DettagliGRAFI. Cosa sono Grafi non orientati Grafi orientati Grafi pesati Alberi Automi!
G R A F I 1 GRAFI Cosa sono Grafi non orientati Grafi orientati Grafi pesati Alberi Automi! 2 cip: cip: Pallogrammi Pallogrammi GRAFI: cosa sono I grafi sono una struttura matematica fondamentale: servono
DettagliUniversità Roma Tre - PAS Classe A048 "Matematica Applicata" - Corso di Informatica a.a. 2013/2014
Università Roma Tre Dipartimento di Matematica e Fisica Percorso Abilitante Speciale Classe A08 Matematica Applicata Corso di Informatica Algoritmi su Grafi Marco Liverani (liverani@mat.uniroma.it) Sommario
DettagliIntroduzione ai Grafi: Implementazione e operazioni di base
Laboratorio di Algoritmi e Strutture Dati Aniello Murano http://people.na.infn.it people.na.infn.it/~murano/ 1 Introduzione ai Grafi: Implementazione e operazioni di base 2 1 Informazione Generali (1)
DettagliIntroduzione ai grafi. Introduzione ai grafi p. 1/2
Introduzione ai grafi Introduzione ai grafi p. 1/2 Grafi Un grafo G é costituito da una coppia di insiemi (V,A) dove V é detto insieme dei nodi e A é detto insieme di archi ed é un sottinsieme di tutte
DettagliAlgoritmi e Strutture Dati
Introduzione ai grafi Grafi: Definizione e Algoritmi di visita Maria Rita Di Berardini, Emanuela Merelli 1 1 Dipartimento di Matematica e Informatica Università di Camerino A.A. 2007/08 Introduzione ai
DettagliAlgoritmi e Strutture Dati
Algoritmi e Strutture Dati Grafi e visite di grafi Domenico Fabio Savo 1 Grafo: definizione Un grafo G=(V,E) consiste in: - un insieme V di vertici (o nodi) - un insieme E di coppie di vertici, detti archi
DettagliLaboratorio di Algoritmi e Strutture Dati
Laboratorio di Algoritmi e Strutture Dati Prof. Aniello Murano Grafi: Implementazione ed operazioni di base Corso di Laurea Codice insegnamento Email docente Anno accademico Laboratorio di Algoritmi e
DettagliFondamenti teorici e programmazione
Fondamenti teorici e programmazione FTP(A) - modb Lezione 7 F.Bonchi Dip.to Informatica Fondamenti teorici e programmazione (A) - modb a.a. 08/9 pag. Introduzione I grafi sono ovunque... Rete Ferroviaria
DettagliIntroduzione alla Teoria dei Grafi
Sapienza Uniersità di Roma - Dipartimento di Ingegneria Informatica, Automatica e Gestionale Introduzione alla Teoria dei Grafi Docente: Renato Bruni bruni@dis.uniroma1.it Corso di: Ottimizzazione Combinatoria
DettagliOttimizzazione Combinatoria Proprietà dei Grafi. Ottimizzazione Combinatoria
Ottimizzazione Combinatoria Ottimizzazione Combinatoria Proprietà dei Grafi ANTONIO SASSANO Università di Roma La Sapienza Dipartimento di Informatica e Sistemistica Corso di Laurea in Ingegneria Gestionale
DettagliIntroduzione ai grafi. Introduzione ai grafi p. 1/2
Introduzione ai grafi Introduzione ai grafi p. 1/2 Grafi Un grafo G è costituito da una coppia di insiemi (V,A) dove V è detto insieme dei nodi e A è detto insieme di archi ed è un sottinsieme di tutte
Dettaglialgoritmi e strutture di dati
algoritmi e strutture di dati grafi m.patrignani nota di copyright queste slides sono protette dalle leggi sul copyright il titolo ed il copyright relativi alle slides (inclusi, ma non limitatamente, immagini,
DettagliEsempi. non. orientato. orientato
Definizione! Un grafo G = (V,E) è costituito da un insieme di vertici V ed un insieme di archi E ciascuno dei quali connette due vertici in V detti estremi dell arco.! Un grafo è orientato quando vi è
DettagliProgetto e Ottimizzazione di Reti 2. Nozioni base di Teoria dei Grafi
Progetto e Ottimizzazione di Reti 2. Nozioni base di Teoria dei Grafi ANTONIO SASSANO (A-L) CARLO MANNINO(M-Z) Uniersità di Roma La Sapienza Dipartimento di Informatica e Sistemistica Corso di Larea in
DettagliAlgoritmi e Strutture di Dati
Algoritmi e Strutture di Dati I grafi m.patrignani Nota di copyright queste slides sono protette dalle leggi sul copyright il titolo ed il copyright relativi alle slides (inclusi, ma non limitatamente,
DettagliTerzo allenamento. Olimpiadi Italiane di Informatica - Selezione territoriale
Terzo allenamento Olimpiadi Italiane di Informatica - Selezione territoriale Luca Chiodini luca@chiodini.org - l.chiodini@campus.unimib.it 22 marzo 2016 Programma 1. Lettura di un problema tratto dalle
DettagliIntroduzione ai grafi
TFA A048 Anno Accademico 2012-13 Outline Cenni storici sui grafi Nozioni introduttive: cammini, connessione, alberi, cicli Cammini di costo minimo Origini storiche La nascita della teoria dei grafi risale
DettagliGRAFI. fig.1 - GRAFI (1) Si avvisa il lettore che certe definizioni che verranno date differiscono da quelle presenti in letteratura.
GRAFI 1. Definizioni, terminologia, esempi e applicazioni (1) Un grafo orientato (o diretto o di-grafo) G è una coppia (V,E) dove V è un insieme non vuoto ed E una relazione binaria su V, E V V, ossia
DettagliK 4 è planare? E K 3,3 e K 5 sono planari? Sì! No! (Teorema di Kuratowski) K 5. Camil Demetrescu, Irene Finocchi, Giuseppe F.
K 4 è planare? Sì! E K 3,3 e K 5 sono planari? K 5 No! (Teorema di Kuratowski) 1 Un albero è un grafo bipartito? SÌ! Ma un grafo bipartito è sempre un albero?? 2 Algoritmi e Strutture Dati Capitolo 11
Dettagli2 OTTIMIZZAZIONE SU GRAFI. E. Amaldi Fondamenti di R.O. Politecnico di Milano 1
2 OTTIMIZZAZIONE SU GRAFI E. Amaldi Fondamenti di R.O. Politecnico di Milano 1 Molti problemi decisionali possono essere formulati utilizzando il linguaggio della teoria dei grafi. Esempi: - problemi di
Dettagli1 TEORIA DELLE RETI 1. 1 Teoria delle reti. 1.1 Grafi
1 TEORIA DELLE RETI 1 1 Teoria delle reti 1.1 Grafi Intuitivamente un grafo è un insieme finito di punti (nodi o vertici) ed un insieme di frecce (archi) che uniscono coppie di punti Il verso della freccia
DettagliRichiami di Teoria dei Grafi. Paolo Detti Dipartimento di Ingegneria dell Informazione Università di Siena
Richiami di Teoria dei Grafi Paolo Detti Dipartimento di Ingegneria dell Informazione Università di Siena Teoria dei grafi La Teoria dei Grafi costituisce, al pari della Programmazione Matematica, un corpo
DettagliNote per la Lezione 21 Ugo Vaccaro
Progettazione di Algoritmi Anno Accademico 20 20 Note per la Lezione 2 Ugo Vaccaro In questa lezione introdurremo il concetto di grafo, esamineremo le loro più comuni rappresentazioni ed introdurremo i
DettagliTeoria dei Grafi Elementi di base della Teoria dei Grafi
L. Pallottino, Sistemi Robotici Distribuiti - Versione del 4 Marzo 2015 42 Teoria dei Grafi Elementi di base della Teoria dei Grafi Definizione 1. Un grafo G = (V, E) è composto da un insieme finito di
DettagliQuarto allenamento. Olimpiadi Italiane di Informatica - Selezione territoriale
Quarto allenamento Olimpiadi Italiane di Informatica - Selezione territoriale Luca Chiodini luca@chiodini.org - l.chiodini@campus.unimib.it 30 marzo 2017 Programma 1. Lettura e analisi di un problema 2.
Dettagli2 OTTIMIZZAZIONE SU GRAFI. E. Amaldi Fondamenti di R.O. Politecnico di Milano 1
2 OTTIMIZZAZIONE SU GRAFI E. Amaldi Fondamenti di R.O. Politecnico di Milano 1 Molti problemi decisionali possono essere formulati utilizzando il linguaggio della teoria dei grafi. Esempi: - problemi di
DettagliGrafi: definizioni e visite
Grafi: definizioni e visite Grafi (non orientati) Grafo (non orientato): G = (V, E) V = nodi (o vertici) E = archi fra coppie di nodi distinti. Modella relazioni fra coppie di oggetti. Parametri della
DettagliB.1 I grafi: notazione e nomenclatura
Appendice B Grafi e Reti In questa appendice richiamiamo i principali concetti relativi a grafi e reti; descriviamo inoltre alcune classi di strutture dati che possono essere utilizzate per implementare
DettagliAppunti lezione Capitolo 13 Programmazione dinamica
Appunti lezione Capitolo 13 Programmazione dinamica Alberto Montresor 12 Novembre, 2015 1 Domanda: Fattore di crescita dei numeri catalani Vogliamo dimostrare che cresce almeno come 2 n. La nostra ipotesi
DettagliEsercitazione 6 Algorithmi e Strutture Dati (Informatica) A.A 2015/2016
Esercitazione 6 Algorithmi e Strutture Dati (Informatica) A.A 2015/2016 Tong Liu April 14, 2016 Elementi Fondamentali Rappresentazione n = V numero di vertici (nodi) m = E numero di archi Matrice di adiacenza:
DettagliGrafi. Moreno Marzolla Dip. di Informatica Scienza e Ingegneria Università di Bologna. moreno.marzolla@unibo.it http://www.moreno.marzolla.
Grafi Moreno Marzolla ip. di Informatica Scienza e Ingegneria Università di ologna moreno.marzolla@unibo.it http://www.moreno.marzolla.name/ opyright lberto Montresor, Università di Trento, Italy (http://www.dit.unitn.it/~montreso/asd/index.shtml)
DettagliProgettazione di Algoritmi - lezione 1
Progettazione di Algoritmi - lezione 1 Grafi Un grafo è una collezione di elementi con una relazione binaria tra di essi. Le situazioni che possono essere modellate dai grafi sono innumerevoli e provengono
DettagliFondamenti di informatica
Fondamenti di informatica 30 novembre 2017 This book is the result of a collaborative effort of a community of people like you, who believe that knowledge only grows if shared. We are waiting for you!
DettagliGrafi: visite. Una breve presentazione. F. Damiani - Alg. & Lab. 04/05 (da C. Demetrescu et al - McGraw-Hill)
Grafi: visite Una breve presentazione Visite di grafi Scopo e tipi di visita Una visita (o attraversamento) di un grafo G permette di esaminare i nodi e gli archi di G in modo sistematico Problema di base
DettagliINFORMATICA AA Università degli Studi di Ferrara Facoltà di Scienze MM FF NN Corso di Laurea in «Scienze e Tecnologie per i Beni Culturali»
Università degli Studi di Ferrara Facoltà di Scienze MM FF NN Corso di Laurea in «Scienze e Tecnologie per i Beni Culturali» AA 2010-2011 INFORMATICA Prof. Giorgio Poletti giorgio.poletti@unife.it Grafi
DettagliGrafi non orientati. Grafi (non orientati) Rappresentazione di Grafi: matrice delle adiacenze. Tipiche applicazioni di modelli basati su grafi
Grafi non orientati Grafi (non orientati) Notazione. G = (V, E) V = nodi (o vertici). E = archi (o lati) tra coppie di nodi. Modella relazioni definite tra coppie di oggetti. aglia di un grafo: numero
DettagliAlgoritmi e strutture dati
Algoritmi e Strutture Dati Minimo albero ricoprente Sia G = (V, E) un grafo connesso non orientato. Definizioni Un albero ricoprente di G è un sottografo T G tale che: T è un albero; T contiene tutti i
DettagliMinimo albero di copertura
apitolo 0 Minimo albero di copertura efinizione 0.. ato un grafo G = (V, E) non orientato e connesso, un albero di copertura di G è un sottoinsieme T E tale che il sottografo (V, T ) è un albero libero.
DettagliEsercitazione 7. Grafi. Rappresentazione e algoritmi di visita
Esercitazione 7 Grafi Rappresentazione e algoritmi di visita Grafo G = (V,E) non orientato 1 1 G = (V,E) orientato 6 Rappresentazione Grafo G = (V,E) metodi standard per la rappresentazione Liste di adiacenza
DettagliMatematica D (in teledidattica) Docenti: Alberto Tonolo, e nelle sedi locali Susi Osti, Katia Rossi, Stefano Antoniazzi.
Matematica D (in teledidattica) Docenti: Alberto Tonolo, e nelle sedi locali Susi Osti, Katia Rossi, Stefano Antoniazzi. Testi di riferimento: Ross: A First Course in Probability, Prentice Hall, euro 49,95
DettagliLaboratorio di Python
Alberi, Esercizi su alberi Università di Bologna 15 e 17 maggio 2013 Sommario Correzione esercizi 1 Correzione esercizi 2 Esercizi Correzione esercizi Definire una funzione che preso un dizionario di studenti
DettagliSommario della lezione
Sommario della lezione Introduzione ai grafi Definizioni, applicazioni,... Rappresentazioni comuni di grafi Esplorazione di grafi Università degli Studi di Salerno Corso di Algoritmi Prof. Ugo Vaccaro
DettagliTeoria dei Grafi Parte I
Teoria dei Grafi Parte I Daniele Vigo D.E.I.S. - Università di Bologna dvigo@deis.unibo.it Teoria dei Grafi Paradigma di rappresentazione di problemi Grafo G : coppia (V,E) V = insieme di vertici E = insieme
Dettagliuscente entrante adiacente Figure B.2 (a) (b) (c) incident from leaves incident to enters incident on adjacent degree isolated
Grafi Si dice grafo un insieme di nodi legati "a due a due" da archi direzionati (o no) I grafi sono strutture dati di fondamentale importanza in informatica Vi sono centinaia di problemi computazionali
DettagliGrafi (non orientati e connessi): minimo albero ricoprente
Grafi (non orientati e connessi): minimo albero ricoprente Una breve presentazione Definizioni Sia G=(V,E) un grafo non orientato e connesso. Un albero ricoprente di G è un sottografo T G tale che: T è
DettagliTeoria dei Grafi Concetti fondamentali
Teoria dei Grafi Concetti fondamentali I grafi sono un mezzo per rappresentare relazioni binarie. Ad esempio: due città connesse da una strada due calcolatori connessi in una rete telematica due persone
DettagliAlgoritmi e Strutture Dati
Algoritmi e Strutture Dati Capitolo 3 Cammini minimi: algoritmo di Dijkstra Cammini minimi in grafi: cammini minimi a singola sorgente (senza pesi negativi) Cammini minimi in grafi pesati Sia G=(V,E,w)
DettagliSommario della lezione
Sommario della lezione Introduzione ai grafi Definizioni, applicazioni,... Rappresentazioni comuni di grafi Esplorazione di grafi Università degli Studi di Salerno Corso di Progettazione di Algoritmi Prof.
DettagliTeoria dei Grafi Parte I. Alberto Caprara DEIS - Università di Bologna
Teoria dei Grafi Parte I Alberto Caprara DEIS - Università di Bologna acaprara@deis.unibo.it Teoria dei Grafi Paradigma di rappresentazione di problemi Grafo G : coppia (V,E) V = insieme di vertici E =
DettagliProf. Giorgio Poletti
Prof. Giorgio Poletti giorgio.poletti@unife.it «I computer danno esattamente quello che gli è stato immesso; se futilità immettiamo, futilità otterremo, ma gli uomini non sono molto diversi.» Richard Bandlerer
DettagliOttimizzazione Discreta Esercizi V: Soluzioni
Ottimizzazione Discreta Esercizi V: Soluzioni Grafi e cammini minimi A.A. 214/215 Esercizio 1 (a) Nella terminologia della teoria dei grafi, si chiede di dimostrare che ogni grafo non orientato G = (V,E),
DettagliCammini minimi in grafi:
Algoritmi e strutture dati Camil Demetrescu, Irene Finocchi, Giuseppe F. Italiano Cammini minimi in grafi: una trilogia Cammini minimi in grafi: Episodio III: la fine della trilogia Input: nelle puntate
DettagliEsercizi Union-Find e su Grafi. Ugo Vaccaro
Progettazione di Algoritmi Anno Accademico 0 07 Esercizi Union-Find e su Grafi. Ugo Vaccaro. Esercizio: Scrivere pseudocodice per Make-Set, Union, e Find-Set usando la rappresentazione attraverso liste
DettagliAlgoritmi e Strutture Dati
Algoritmi e Strutture Dati Capitolo 13 Cammini minimi: Algoritmo di Dijkstra (*) (ACM in grafi diretti e non diretti senza archi di peso negativo) Punto della situazione Algoritmo basato sull ordinamento
DettagliSommario della lezione
Università degli Studi di Salerno Corso di Algoritmi Prof. Ugo Vaccaro Anno Acc. 204/5 p. /5 Sommario della lezione Introduzione ai grafi Definizioni, applicazioni,... Rappresentazioni comuni di grafi
DettagliFondamenti teorici e programmazione
Fondamenti teorici e programmazione FTP(A) - modb Lezione 9 di ricerca binaria F.Bonchi Dip.to Informatica Fondamenti teorici e programmazione (A) - modb a.a. 2018/19 pag. 1 liberi Un albero libero è un
DettagliALBERI ORIENTATI. Definizione: Albero orientato = rooted tree = grafo orientato con le seguenti proprietà: - ha un nodo fissato, detto radice (r);
ALBERI ORIENTATI Pagina 1 ALBERI ORIENTATI 15:05 Definizione: Albero orientato = rooted tree = grafo orientato con le seguenti proprietà: - ha un nodo fissato, detto radice (r); - per ogni nodo v, esiste
DettagliAlgoritmi e Strutture Dati
Algoritmi e Strutture Dati Minimo albero ricoprente Domenico Fabio Savo 1 Albero ricoprente Sia G=(V,E) un grafo non orientato e connesso. Un albero ricoprente di G è un sottografo T G tale che: T è un
DettagliAlgoritmi e Strutture Dati. Capitolo 11 Visite di grafi
lgoritmi e Strutture ati apitolo Visite di grafi Strutture dati per rappresentare grafi rafi non diretti Quanto spazio? a b c d a b c d a 0 a b d c b 0 0 b c a c 0 c a d b d 0 0 d c a Matrice di adiacenza
DettagliAlgoritmi e Strutture Dati
Algoritmi e Strutture Dati Minimo albero ricoprente Fabio Patrizi 1 Albero ricoprente Sia G=(V,E) un grafo non orientato e connesso. Un albero ricoprente di G è un sottografo T G tale che: T è un albero;
DettagliGrafi (orientati): cammini minimi
Grafi (orientati): cammini minimi Una breve presentazione Definizioni Sia G=(V,E) un grafo orientato con costi w sugli archi. Il costo di un cammino π= è dato da: Un cammino minimo tra
DettagliAlberi e arborescenze di costo minimo
Alberi e arborescenze di costo minimo Complementi di Ricerca Operativa Giovanni Righini Dipartimento di Tecnologie dell Informazione - Università degli Studi di Milano Definizioni - 1 Un grafo G = (V,
DettagliSoluzioni della settima esercitazione di Algoritmi 1
Soluzioni della settima esercitazione di Algoritmi 1 Beniamino Accattoli 19 dicembre 2007 1 Grafi Un grafo è non orientato se descrivendo un arco come una coppia di vertici (i,j) l ordine è ininfluente
DettagliReti Complesse Biologiche
Reti Complesse Biologiche Corso di Modelli di Sistemi Biologici II Università di Roma Sapienza Anno Accademico 2008/2009 Fabrizio De Vico Fallani, PhD Dipartimento di Fisiologia Umana e Farmacologia fabrizio.devicofallani@uniroma1.it
DettagliGrafi. V = {a, b, c, d} E = {(a, b), (a, c), (c, a), (d, d), (b, d)}
Grafi Grafo orientato (o diretto) = (V,E) V = nodi o vertici - E = archi (edges) V = {a, b, c, d} E = {(a, b), (a, c), (c, a), (d, d), (b, d)} archi uscenti da un nodo x: (x, y) archi incidenti su un nodo
DettagliProblema del cammino minimo
Algoritmi e Strutture di Dati II Problema del cammino minimo Un viaggiatore vuole trovare la via più corta per andare da una città ad un altra. Possiamo rappresentare ogni città con un nodo e ogni collegamento
DettagliRicerca Operativa. Facoltà di Ingegneria dell Informazione, Informatica e Statistica. (Cenni sui Grafi) Giovanni Fasano.
Facoltà di Ingegneria dell Informazione, Informatica e Statistica Appunti dalle lezioni di Ricerca Operativa (Cenni sui Grafi) sede di Latina Giovanni Fasano fasano@unive.it http://venus.unive.it/ fasano
DettagliAlgoritmi e Strutture Dati. Capitolo 12 Minimo albero ricoprente: Algoritmo di Kruskal
Algoritmi e Strutture Dati Capitolo 12 Minimo albero ricoprente: Algoritmo di Kruskal Progettare una rete stradale Supponiamo di dover progettare una rete stradale in cui il costo di costruzione di un
DettagliGrafi pesati Minimo albero ricoprente
Algoritmi e Strutture Dati Definizioni Grafi pesati Minimo albero ricoprente Sia G=(V,E) un grafo non orientato e connesso. Un albero ricoprente di G è un sottografo T G tale che: T è un albero; T contiene
DettagliInformatica 3. LEZIONE 24: Grafi. Modulo 1: Rappresentazione e implementazione di grafi Modulo 2: Attraversamento di un grafo
Informatica 3 LEZIONE 24: Grafi Modulo 1: Rappresentazione e implementazione di grafi Modulo 2: Attraversamento di un grafo Informatica 3 Lezione 24 - Modulo 1 Rappresentazione e implementazione di grafi
DettagliAlgoritmi e Strutture Dati (Mod. B) Algoritmi su grafi Ricerca in profondità (Depth-First Search) Parte II
Algoritmi e Strutture Dati (Mod. B) Algoritmi su grafi Ricerca in profondità (Depth-First Search) Parte II Classificazione digli archi Sia G la foresta DF generata da DFS sul grafo G. Arco d albero: gli
DettagliEsercizi proposti 10
Esercizi proposti 10 In questo gruppo di esercizi assumiamo, dove non sia specificato diversamente, di rappresentare i grafi mediante liste di archi, con il tipo di dati così dichiarato: type a graph =
DettagliCammini minimi fra tutte le coppie
Capitolo 12 Cammini minimi fra tutte le coppie Consideriamo il problema dei cammini minimi fra tutte le coppie in un grafo G = (V, E, w) orientato, pesato, dove possono essere presenti archi (ma non cicli)
DettagliAlgoritmi e Strutture Dati. Capitolo 13 Cammini minimi: Algoritmo di Bellman e Ford
Algoritmi e Strutture Dati Capitolo 13 Cammini minimi: Algoritmo di Bellman e Ford Cammini minimi in grafi: una trilogia Cammini minimi in grafi: Episodio II: cammini minimi a singola sorgente (per grafi
DettagliAlgoritmi e Strutture Dati. Capitolo 11 Grafi e visite di grafi
Algoritmi e Strutture Dati Capitolo 11 Grafi e visite di grafi grafi, teoria dei grafi, problemi su grafi Origini storiche Nel 1736, il matematico Eulero, affrontò l annoso problema dei 7 ponti di Königsberg
Dettagli«Sciente e Tecnologie dei Beni Culturali»
5 Informatica CdS in «Sciente e Tecnologie dei Beni Culturali» AA 2014-2015 Mini-sito dell insegnamento: http://www.unife.it/scienze/beni.culturali/insegnamenti/informatica Prof. Giorgio Poletti giorgio.poletti@unife.it
DettagliAlgoritmi e strutture dati
Algoritmi e Strutture Dati Cammini minimi Definizioni Sia G = (V,E) un grafo orientato pesato sugli archi. Il costo di un cammino π = è dato da: Un cammino minimo tra una coppia di
DettagliGrafo diretto Università degli Studi di Milano
Grafo diretto Un grafo diretto G è na coppia ordinata (V, E), doe V è l insieme dei ertici {,,,,n} (anche detti nodi). E V V è n insieme di coppie ordinate (,) dette archi diretti 6 V= {,,,4,5,6,7} 7 4
DettagliProgettazione di Algoritmi Anno Accademico Esercizi su Grafi: Parte Prima
1 Progettazione di Algoritmi Anno Accademico 2018 2019 Esercizi Ugo Vaccaro Esercizi su Grafi: Parte Prima N.B. Si ricorda che ogni algoritmo và accompagnato da una argomentazione sul perchè calcola correttamente
DettagliProblema: attraversamento di un grafo. Definizione del problema
Problema: attraversamento di un grafo Visita: attenzione alle soluzioni facili Definizione del problema Prendere ispirazione dalla visita degli alberi Dato un grafo =(V, ) ed un vertice r di V (detto sorgente
DettagliUniversità degli Studi di L Aquila Facoltà di Scienze M.F.N. Corso di Laurea in Informatica. Modulo di Laboratorio di Algoritmi e Strutture Dati
Università degli Studi di L Aquila Facoltà di Scienze M.F.N. Corso di Laurea in Informatica Modulo di Laboratorio di Algoritmi e Strutture Dati Alberi binari Giovanna Melideo melideo@di.univaq.it 1 Alberi
DettagliProgettazione di algoritmi
Progettazione di algoritmi Discussione dell'esercizio [vincoli] Prima di tutto rappresentiamo il problema con un grafo G: i nodi sono le n lavorazioni L 1, L 2,, L n, e tra due nodi L h, L k c'è un arco
DettagliG è 2-colorabile se ogni nodo può essere colorato di bianco o di nero in modo che nodi connessi da archi siano colorati con colori distinti.
Grafi Grafi bipartiti Un grafo non orientato G è bipartito se l insieme dei nodi può essere partizionato in due sottoinsiemi disgiunti tali che nessun arco del grafo connette due nodi appartenenti allo
DettagliL' ADT grafo è un contenitore di elementi memorizzati nelle posizioni del grafo (vertici e archi)
L' ADT grafo è un contenitore di elementi memorizzati nelle posizioni del grafo (vertici e archi) le informazioni possono essere memorizzate sia sui vertici sia sugli archi del grafo Metodi fondamentali
DettagliCammini minimi con sorgente singola
Capitolo 11 Cammini minimi con sorgente singola efinizione 11.1. Sia G = (V,, w) un grafo orientato e pesato; dato il cammino p = v 0, v 1,..., v k in G, il valore w(p) = k i=1 w(v i 1, v i ) rappresenta
DettagliOrdinamenti. Grafo : definizione. Un grafo G = (V,E)è composto da: V: insieme di vertici E V V: insieme di archi (edge) che connettono i vertici
Ordinamenti 1 Vittorio Maniezzo Università di Bologna Grafo : definizione Un grafo G = (V,E)è composto da: V: insieme di vertici E V V: insieme di archi (edge) che connettono i vertici Un arco a= {u,v}
DettagliGrafi Stessa distanza
Grafi Stessa distanza In un grafo orientato G, dati due nodi s e v, si dice che: v è raggiungibile da s se esiste un cammino da s a v; la distanza di v da s è la lunghezza del più breve cammino da s a
DettagliEsercitazione 3. Osserviamo che, dato un grafo con pesi distinti, questo ammette un unico MST.
Esercitazione 3 Problema 6: Sia G = (V, E) un grafo con pesi distinti sugli archi ed e E un arco di G. Progettare un algoritmo lineare in grado di determinare se esiste un MST di G che contiene l arco
DettagliCammini Minimi. Algoritmo di Dijkstra. Cammino in un grafo
Cammini Minimi Algoritmo di Dijkstra Cammino in un grafo Dato un grafo G=(V,E), un Cammino (Percorso) in G è un insieme di vertici v 1, v 2,.., v k tali che (v i, v i+1 ) E v 1 v 2 v 3 v k In un grafo
DettagliOpen walk: Nodo di partenza diverso da quello di arrivo Close walk: Nodo di partenza coincidente con quello di arrivo
Connettività WALK, TRAIL, PATH Walk (passeggiata) Walk (passeggiata): Una passeggiata è una sequenza di nodi e link che inizia e finisce con un nodo, in cui ogni nodo è incidente allo spigolo che lo precede
DettagliIntroduzione. Il routing permette la comunicazione tra due nodi differenti anche se non sono collegati direttamente
Routing Introduzione Il livello 3 della pila ethernet ha il compito di muovere i pacchetti dalla sorgente attraversando più sistemi Il livello di network deve quindi: Scegliere di volta in volta il cammino
Dettagli