Le applicazioni degli algoritmi di visita dei grafi. Gianpiero Cabodi e Paolo Camurati Dip. Automatica e Informatica Politecnico di Torino
|
|
- Cesare Leoni
- 6 anni fa
- Visualizzazioni
Transcript
1 Le applicazioni degli algoritmi di visita dei grafi Gianpiero Cabodi e Paolo Camurati Dip. Automatica e Informatica Politecnico di Torino
2 di visita dei grafi 2 Rilevazione di cicli Un grafo è aciclico se e solo se in una visita in profondità non si incontrano archi etichettati B.
3 Componenti connesse In un grafo non orientato rappresentato come lista delle adiacenze: ogni albero della foresta della DFS è una componente connessa G->cc[v] è un array avente come indici i vertici che memorizza un intero che identifica ciascuna componente connessa. componenti connesse A.A. 2004/2005 di visita dei grafi 3
4 Connettività Dato un grafo non orientato e connesso, determinare se perde la proprietà di connessione a seguito della rimozione di: un arco un nodo. Ponte (bridge): arco la cui rimozione disconnette il grafo. Punto di articolazione: vertice la cui rimozione disconnette il grafo. A.A. 2004/2005 di visita dei grafi 4
5 di visita dei grafi 5 Esempio
6 di visita dei grafi 6 Bridge Un arco (v,w) Back non può essere un ponte (i vertici v e w sono anche connessi da un cammino nell albero della visita DFS). Un arco (v,w) Tree è un ponte se e solo se non esistono archi Back che connettono un discendente di w a un antenato di v nell albero della visita DFS.
7 Grafo trasposto Dato un grafo orientato G =(V, E), il suo grafo trasposto G T = (V, E T ) è tale per cui (u, v) E (v,u) E T. Implementazione con lista delle adiacenze: Graph GRAPHreverse(Graph G) { int v; link t; Graph R = GRAPHinit(G->V); for (v=0; v < G->V; v++) for (t= G->adj[v]; t!= NULL; t = t->next) GRAPHinsert(R, EDGE(t->v, v)); return R; } A.A. 2004/2005 di visita dei grafi 7
8 Directed Acyclic Graph (DAG) DAG: modelli impliciti per ordini parziali utilizzati nei problemi di scheduling. Scheduling: dati compiti (tasks) e vincoli di precedenza (constraints) come programmare i compiti in modo che siano tutti svolti rispettando le precedenze. A.A. 2004/2005 di visita dei grafi 8
9 Ordinamento topologico (inverso): riordino dei vertici secondo una linea orizzontale, per cui se esiste l arco (u, v) il vertice u compare a SX (DX) di v e gli archi vanno tutti da SX (DX) a DX (SX). I tempi di fine elaborazione post della visita DFS danno un ordinamento topologico inverso del DAG A.A. 2004/2005 reverse topological sort di visita dei grafi 9
10 Esempio 5 slip 8 calzini 6 pantaloni 7 scarpe 3 cintura 0 camicia 1 cravatta 4 orologio A.A. 2004/ giacca di visita dei grafi 10
11 di visita dei grafi 11 } 5 slip 8 calzini 6 pantaloni 3 cintura 7 scarpe 0 camicia 4 orologio 1 cravatta 2 giacca 2
12 di visita dei grafi 12 } 5 slip 8 calzini 6 pantaloni 3 cintura 7 scarpe 0 camicia 4 orologio 1 cravatta 2 giacca 2 1
13 di visita dei grafi 13 } 5 slip 8 calzini 6 pantaloni 3 cintura 7 scarpe 0 camicia 4 orologio 1 cravatta 2 giacca 2 1 3
14 di visita dei grafi 14 } 5 slip 8 calzini 6 pantaloni 3 cintura 7 scarpe 0 camicia 4 orologio 1 cravatta 2 giacca
15 di visita dei grafi 15 } 5 slip 8 calzini 6 pantaloni 3 cintura 7 scarpe 0 camicia 4 orologio 1 cravatta 2 giacca
16 di visita dei grafi 16 } 5 slip 8 calzini 6 pantaloni 3 cintura 7 scarpe 0 camicia 4 orologio 1 cravatta 2 giacca
17 di visita dei grafi 17 } 5 slip 8 calzini 6 pantaloni 3 cintura 7 scarpe 0 camicia 4 orologio 1 cravatta 2 giacca
18 di visita dei grafi 18 } 5 slip 8 calzini 6 pantaloni 3 cintura 7 scarpe 0 camicia 4 orologio 1 cravatta 2 giacca
19 di visita dei grafi 19 } 5 slip 8 calzini 6 pantaloni 3 cintura 7 scarpe 0 camicia 4 orologio 1 cravatta 2 giacca
20 di visita dei grafi 20 ordine topologico inverso ordine topologico
21 Componenti fortemente connesse Algoritmo di Kosaraju: trasponi il grafo esegui DFS sul grafo trasposto, calcolando i tempi di scoperta e di fine elaborazione esegui DFS sul grafo originale per tempi di fine elaborazione descrescenti gli alberi dell ultima DFS sono le componenti fortemente connesse. A.A. 2004/2005 scc di visita dei grafi 21
22 di visita dei grafi 22 Esempio G G T
23 di visita dei grafi 23 Visita DFS del grafo trasposto G T 0/5 2/3 6/9 7/ /4 14/15 10/13 11/12
24 Visita DFS del grafo secondo tempi decrescenti di fine elaborazione del grafo trasposto G T scc4 scc G A.A. 2004/2005 scc2 scc1 di visita dei grafi 24
Ordinamento parziale
Ordinamento parziale Ordinamento parziale di un insieme A: relazione d'ordine parziale sugli elementi di A possono esistere coppie tra le quali non è definito alcun ordine Un grafo diretto aciclico (DAG)
DettagliSommario. Rappresentazione dei grafi. Ordinamento topologico. Visita in ampiezza Visita in profondità
Visite Grafi Sommario Rappresentazione dei grafi Visita in ampiezza Visita in profondità Ordinamento topologico Visita in ampiezza La visita in ampiezza breadth-first-search (BFS) di un grafo dato un vertice
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
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
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,
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 è
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
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
DettagliGrafi: ordinamento topologico
.. Grafi: ordinamento topologico Che cosa e e come si calcola Che cosa e un ordinamento topologico F. Damiani - Alg. & Lab. 04/05 Una definizione di ordinamento topologico Definizione. Funzione σ: V {1,
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
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)
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
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
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
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
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
DettagliAlgoritmi e Strutture Dati (Mod. B) Algoritmi su grafi Ricerca in profondità (Depth-First Search) Parte III
Algoritmi e Strutture Dati (Mod. B) Algoritmi su grafi Ricerca in profondità (Depth-First Search) Parte III Applicazioni di DFS Due prolemi: calcolare l ordinamento topologico indotto da un grafo aciclico.
DettagliSommario della lezione
Università degli Studi di Salerno Corso di Algoritmi Prof. Ugo Vaccaro Anno Acc. 2009/0 p. /37 Sommario della lezione Esplorazione di grafi: Visita in profondità Proprietà Applicazioni Università degli
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 giu 03 ASD - Grafi
Grafi giu 03 ASD - Grafi Definizioni/1 Struttura dati per la rappresentazione di relazioni binarie G=(V,E), V =n, E =m V: insieme di Vertici E={(v i, v j ): v i, v j (v i, v j ) = (v j, v i ) (v i, v j
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
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
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
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)
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
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)
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
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
DettagliLaboratorio di Algoritmi
Laboratorio di Algoritmi Corso di Laurea in Matematica Roberto Cordone DI - Università degli Studi di Milano Lezioni: Martedì 8.30-10.30 in aula 3 Mercoledì 10.30-12.30 in Aula 2 Giovedì 8.30-10.30 in
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
DettagliGRAFI. Angelo Di Iorio Università di Bologna
GRAFI Angelo Di Iorio Università di Bologna Esercizio 1 Implementare una classe Java per memorizzare e manipolare un grafo orientato di nodi di tipo T (usando il framework Generics) Applicazioni: rete
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
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
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
DettagliBioinformatica. 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 9 - Grafi Alberto Montresor Università di Trento This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike License. To view a copy of this
DettagliNote per la Lezione 24
Progettazione di Algoritmi Anno Accademico 208 209 Note per la Lezione 2 Ugo Vaccaro Parliamo ora di Cicli in grafi. Ricordiamo che un ciclo in un grafo G = (V,E) è una sequenza di nodi v,v 2,...,v n tale
DettagliEsercizi svolti a lezione
Esercizi svolti a lezione Problema 1 In un corso di laurea sono previsti un certo numero di esami obbligatori. Esistono inoltre dei vincoli di propedeuticità: se un esame A è propedeutico ad un esame B
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
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
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
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
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
DettagliAlberi e alberi binari I Un albero è un caso particolare di grafo
Alberi e alberi binari I Un albero è un caso particolare di grafo I I I I È costituito da un insieme di nodi collegati tra di loro mediante archi Gli archi sono orientati (ogni arco esce da un nodo origine
DettagliProgettazione di Algoritmi - lezione 6
Progettazione di Algoritmi - lezione 6 Discussione dell'esercizio [sensi unici] La rete viaria della cittadina può essere rappresentata facilmente tramite un grafo diretto in cui i nodi sono gli incroci
DettagliUNIVERSITA DEGLI STUDI DI PERUGIA
UNIVERSITA DEGLI STUDI DI PERUGIA REGISTRO DELLE LEZIONI E DELLE ALTRE ATTIVITÀ DIDATTICHE Anno accademico 2006-2007 Dott./Prof. Pinotti Maria Cristina Settore scientifico-disciplinare INF01 Facoltà Scienze
DettagliAlgoritmi e Strutture di Dati A.A Esempio di prova scritta del 19 gennaio 2018 D.M CFU Libri e appunti chiusi Tempo = 2:00h
Algoritmi e Strutture di Dati A.A. 2017-2018 Esempio di prova scritta del 19 gennaio 2018 D.M. 270-9CFU Libri e appunti chiusi Tempo = 2:00h Note (es: correzione veloce, eventuali indisponibilità, ecc.)...
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
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
DettagliGennaio
Laboratorio di Algoritmi e Strutture Dati I Docente: A. Murano Laurea in Informatica -- -- -- 25 Gennaio 2010 -- -- -- Università degli Studi di Napoli Federico II Nome e Cognome Numero di Matricola: Spazio
DettagliInformatica 3. LEZIONE 25: Algoritmi sui grafi. Modulo 1: Problema del percorso più breve Modulo 2: Spanning tree a costo minimo
Informatica LEZIONE 2: Algoritmi sui grafi Modulo 1: Problema del percorso più breve Modulo 2: Spanning tree a costo minimo Informatica Lezione 2 - Modulo 1 Problema del percorso più breve Problema Problema:
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
DettagliAlgoritmi e Strutture di Dati II 2. Visite di grafi
Algoritmi e Strutture di Dati II 2 Visite di grafi Gli algoritmi di visita di un grafo hanno come obiettivo l esploraione di tutti i nodi e gli archi del grafo. Vi sono due modi principali per esplorare
DettagliAlberi e alberi binari I Un albero è un caso particolare di grafo
Alberi e alberi binari Un albero è un caso particolare di grafo È costituito da un insieme di nodi collegati tra di loro mediante archi Gli archi sono orientati (ogni arco esce da un nodo origine ed entra
Dettagli3.1 Basic Definitions and Applications. Chapter 3. Graphs. Undirected Graphs. Grafi Diretti. Undirected graph. G = (V, E) Grafo diretto.
Chapter 3 3.1 Basic Definitions and Applications Graphs 1 Undirected Graphs Grafi Diretti Undirected graph. G = (V, E)! V = nodi (anche vertici).! E = archi tra coppie di nodi.! Modella relazioni tra coppie
DettagliTopological Sort. Facoltà di Ingegneria Corso di Studi in Ingegneria Informatica. Elaborato di Algoritmi e Strutture Dati. Anno Accademico 2011/2012
Facoltà di Ingegneria Corso di Studi in Ingegneria Informatica Elaborato di Algoritmi e Strutture Dati Topological Sort Anno Accademico 2011/2012 Professore Carlo Sansone Studente Lampognana Francesca
DettagliLABORATORIO DI ALGORITMI E STRUTTURE DATI A-L. Ingegneria e scienze informatiche Cesena A.A: 2016/2017 Docente: Greta Sasso
LABORATORIO DI ALGORITMI E STRUTTURE DATI A-L Ingegneria e scienze informatiche Cesena A.A: 2016/2017 Docente: Greta Sasso Grafi Un grafo è una struttura definita come un insieme di nodi (o vertici) che
DettagliRagionamento su reti di vincoli temporali
UNIVERSITA DEGLI STUDI DI BRESCIA FACOLTA DI INGEGNERIA ELETTRONICA Ragionamento su reti di vincoli temporali NICOLA FERRARI - NICOLA MOROTTI Rappresentazione info. temporale L informazione temporale qualitativa
DettagliGrafi: introduzione. Definizioni: che cosa sono i grafi. Definizione
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
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,
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
DettagliLaboratorio di Algoritmi e Strutture Dati
Laboratorio di Algoritmi e Strutture Dati Aniello Murano http://people.na.infn.it people.na.infn.it/~murano/ Grafi pesati e alberi minimi di copertura Riepilogo delle lezioni precedenti Definizione di
DettagliAlgoritmo di Huffman: correttezza (Coin changing) Grafi
Algoritmo di Huffman: correttezza (Coin changing) Grafi Punto Analisi di algoritmi (notazioni asintotiche, relazioni di ricorrenza) Tecniche di progettazione: divide et impera, programmazione dinamica,
DettagliLaboratorio di Algoritmi e Strutture Dati
Laboratorio di Algoritmi e Strutture Dati Prof. Aniello Murano Componenti fortemente connesse e Alberi minimi di copertura Corso di Laurea Codice insegnamento Email docente Anno accademico Informatica
DettagliIl Problema dell Albero Ricoprente Minimo (Shortest Spanning Tree - SST)
Il Problema dell Albero Ricoprente Minimo (Shortest Spanning Tree - SST) È dato un grafo non orientato G=(V,E). Ad ogni arco e i E, i=1,,m, è associato un costo c i 0 7 14 4 10 9 11 8 12 6 13 5 17 3 2
DettagliVisite in Grafi BFS e DFS
Visite in Grafi BFS e DFS Visita di un Grafo Obiettivo: Visitare una sola volta tutti i nodi del grafo. Es.: visitare un porzione del grafo del Web Difficoltà: Presenza di cicli: Marcare i nodi visitati
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
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
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
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.
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
DettagliLaboratorio di Algoritmi
Laboratorio di Algoritmi Corso di Laurea in Matematica Roberto Cordone DI - Università degli Studi di Milano Lezioni: Martedì 8.30-10.30 in aula 3 Mercoledì 10.30-13.30 in aula 2 Giovedì 15.30-18.30 in
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
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
DettagliVisite in Grafi BFS e DFS. PDF created with FinePrint pdffactory trial version
Visite in Grafi BFS e DFS Visita di un Grafo 8Obiettivo: 4Visitare una sola volta tutti i nodi del grafo. 4Es.: visitare un porzione del grafo del Web 8Difficoltà : 4Presenza di cicli: Marcare i nodi visitati
DettagliImplementazione Algoritmo Esponenziale per Vertex Cover
Implementazione Algoritmo Esponenziale per Vertex Cover Laboratorio per Algo II Magistrale Informatica Giuseppe Persiano giuper@dia.unisa.it Dipartimento di Informatica ed Appl. Renato M. Capocelli Università
DettagliProgettazione di Algoritmi (4, 6, 9 CFU) Classe 3 (matricole congrue 2 modulo 3) Prof.ssa Anselmo. Appello del 30 Gennaio 2019.
COGNOME: Nome: Progettazione di Algoritmi (4, 6, 9 CFU) Classe 3 (matricole congrue 2 modulo 3) Prof.ssa Anselmo Appello del 30 Gennaio 2019 Attenzione: Inserire i propri dati nell apposito spazio soprastante
DettagliGraf. Progettazione di Algoritmi a.a Matricole congrue a 1. Docente: Annalisa De Bonis. Grafi non direzionati
Graf Progettazione di Algoritmi a.a. 2017-18 Matricole congrue a 1 Docente: Annalisa De Bonis 1 Grafi non direzionati Grafi non direzionati. G = (V, E) V = insieme nodi. E = insieme archi. Esprime le relazioni
DettagliDati e Algoritmi 1: A. Pietracaprina. Grafi (II parte)
Dati e Algoritmi 1: A. Pietracaprina Grafi (II parte) 1 Breath-First Search (algoritmo iterativo) Si assume una rappresentazione tramite liste di adiacenza. L ordine con cui si visitano i vicini di un
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
Dettagli7.1 Progettare un algoritmo per costruire ciclo euleriano di un grafo non orientato.
Capitolo 7 Grafi 7.1 Progettare un algoritmo per costruire ciclo euleriano di un grafo non orientato. 7.3 Un grafo a torneo è un grafo orientato G in cui per ogni coppia di vertici x e y esiste un solo
DettagliDepth-first search. Visita in profondità di un grafo Algoritmo Esempio Complessità dell algoritmo Proprietà Ordinamento topologico
Depth-first search Visita in profondità di n grafo Algoritmo Esempio Complessità dell algoritmo Proprietà Ordinamento topologico Depth-first search Dato n grafo G=(V,E) e n specifico ertice s chiamato
Dettagli2.3.3 Cammini ottimi nei grafi senza circuiti
.. Cammini ottimi nei grafi senza circuiti Sia un grafo G = (N, A) orientato senza circuiti e una funzione di costo che assegna un valore c ij R ad ogni arco (i, j) A circuito Proprietà I nodi di un grafo
DettagliINSTRADAMENTO: ALGORITMO DI KRUSKAL
UNIVERSITA' DEGLI STUDI DI BERGAMO Dipartimento di Ingegneria INSTRADAMENTO: ALGORITMO DI KRUSKAL FONDAMENTI DI RETI E TELECOMUNICAZIONE A.A. 2012/13 - II Semestre Esercizio 1 Sia dato il grafo G= (N,
DettagliDati e Algoritmi I (Pietracaprina) Esercizi svolti sui Grafi
Dati e Algoritmi I (Pietracaprina) Esercizi svolti sui Grafi Dati e Algoritmi I (Pietracaprina): Esercizi 1 Problema 1 (Esercizio C-14.34 del testo [GTG14]) Sia G = (V, E) un grafo non diretto con n =
DettagliLaboratorio di Algoritmi e Strutture Dati
Laboratorio di Algoritmi e Strutture Dati Aniello Murano http://people.na.infn.it people.na.infn.it/~murano/ Operazioni su Grafi: Inserimento e Cancellazione di un Nodo Possibili scenari Bisogna distinguere
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,
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
DettagliGraf. Progettazione di Algoritmi a.a Matricole congrue a 1. Docente: Annalisa De Bonis
Graf Progettazione di Algoritmi a.a. 2016-17 Matricole congrue a 1 Docente: Annalisa De Bonis 1 Grafi non direzionati Grafi non direzionati. G = (V, E) V = insieme nodi. E = insieme archi. Esprime le relazioni
DettagliGrafi. Sommario. Definizioni Rappresentazione dei grafi Algoritmi di visita Esempi in C
Grafi Sommario Definizioni Rappresentazione dei grafi Algoritmi di visita Esempi in C 1 Esempi Relazioni di parentela Alberi genealogici Relazioni tra classi nei linguaggi OO Grafo del Web Assetti societari
DettagliProgettazione di Algoritmi. Classe 3 (matricole congrue 2 modulo 3) Prof.ssa Anselmo. Appello del 19 Febbraio Attenzione:
COGNOME: Nome: Progettazione di Algoritmi Classe 3 (matricole congrue 2 modulo 3) Prof.ssa Anselmo Appello del 19 Febbraio 2018 Attenzione: Inserire i propri dati nell apposito spazio soprastante e sottostante.
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
DettagliGli algoritmi ricorsivi di ordinamento. Paolo Camurati Dip. Automatica e Informatica Politecnico di Torino
ordinamento Paolo Camurati Dip. Automatica e Informatica Politecnico di Torino Merge Sort Ricorsivo, divide et impera Stabile Divisione: due sottovettori SX e DX rispetto al centro del vettore. p r A.A.
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 è
DettagliAlgoritmi. Matricole dispari Prof.ssa Anselmo. Appello del 29 Gennaio Attenzione:
COGNOME: Nome: Algoritmi Matricole dispari Prof.ssa Anselmo Appello del 29 Gennaio 2015 Attenzione: Inserire i propri dati nell apposito spazio soprastante e sottostante. Non voltare la pagina finché non
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
DettagliDati e Algoritmi 1: A. Pietracaprina. (I parte)
Dati e Algoritmi 1: A. Pietracaprina Grafi (I parte) 1 Definizione di Grafo Definizione Grafo G = (V, E): V insieme di vertici (o nodi) E collezione di archi (coppie di vertici). Il grafo si dice diretto
DettagliRicordo che è ammesso alla prova scritta solo chi ha già consegnato ed avuto approvato il progetto.
Ricordo che è ammesso alla prova scritta solo chi ha già consegnato ed avuto approvato il progetto. NON CORREGGERÒ il compito a chi non ha consegnato il progetto Esercizio 1 (possibili più risposte esatte
DettagliStallo di processi. Definizione del problema e modellizzazione Stefano Quer Dipartimento di Automatica e Informatica Politecnico di Torino
Stallo di processi Definizione del problema e modellizzazione Stefano Quer Dipartimento di Automatica e Informatica Politecnico di Torino 2 Stallo (deadlock) Condizione di stallo (deadlock) Un P/T richiede
Dettagli