40 Algoritmi sui Grafi

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "40 Algoritmi sui Grafi"

Transcript

1 Università degli Studi di Napoli Parthenope Corso di Laurea in Informatica A.A 2014/15 PROGETTO PROGRAMMAZIONE III 40 Algoritmi sui Grafi Relatore: Prof. Raffaele Montella Studente: Diego Parlato Matricola: 0124/636

2 INTRODUZIONE al PROGETTO Lo scopo del progetto è quello di testare quaranta algoritmi sui grafi messi a disposizione su web dall università di Princeton. Gli algoritmi coprono i maggiori argomenti delle quattro tipologie di grafi. Ogni algoritmo dovrà essere testato per valori di 100, 1000, Si è scelto di far corrispondere questi numeri agli archi, visto che la maggior parte delle operazioni si basa sull aggiunta di questi ultimi. Per testare gli algoritmi si è creata un ambiente apposito di testing, sottoforma di classe, che conterrà anche il metodo main. Oltre al main, la classe AmbienteTesting ha tre metodi per ogni algoritmo. Ogni metodo testerà l algoritmo su una delle tre dimensioni di dati su cui vanno testati. I risultati ottenuti sono trascritti, grazie al package jxl, automaticamente in un file excel che sarà fornito alla consegna. E giusto avvertire che alcuni algoritmi prendono dei tempi decisamente lunghi (si arriva fino 1000 secondi circa), e altri terminano il Java Heap Space (almeno sul calcolatore usato per il testing). E quindi consigliabile o dividere il testing in trance, o avere un calcolatore parecchio performante. GRAFI IN GENERALE Un grafo è una coppia di elementi (V,E), dove V è un insieme di vertici, ed E un insieme di archi. Un arco è, in pratica, una linea che collega due vertici. Per convenzione nomiamo i vertici V da 0 a V-1, in questo modo rendiamo più semplice riferirci ad essi come indice di un array. Usiamo la notazione v-w(w-v) per fare riferimento ad un arco che connette due vertici v e w. Si sono testati algoritmi sulle quattro tipologie principali di grafi: Grafi Indiretti (con semplici connessioni senza direzione), Grafi Diretti (con semplici connessioni ma con direzione), Grafi Indiretti con peso (gli archi sono senza direzione, ma hanno un peso), Grafi diretti con peso (Gli archi hanno direzione e peso). Vediamo gli algoritmi che abbiamo testato per ognuna delle quattro categorie. Algoritmo Graph GRAFI INDIRETTI La classe Graph rappresenta un grafo indiretto di vertici V. Permette l operazione di aggiunta di un arco, il conoscere il numero di vertici e archi. Sono possibili selfloops. Per implementarlo sono usate liste di adiacenza. Tutte le operazioni prendono tempo costante nel caso peggiore.

3 Algoritmo GraphGenerator La classe GraphGenerator consentem tramite metodi static, la creazione di vari tipi di grafi (random, bipartite, ad albero, ecc.) Algoritmo DepthFirstSearch La classe DepthFirstSearch determina quali sono I vertici connessi a una data sorgente s. Il costruttore prende tempo V+E nel caso peggiore. Algoritmo DepthFirstPaths La classe DepthFirstPaths restituisce, se possibile, un percorso da una sorgente s ad ogni altro vertice del grafo. Per implementare viene usata la depth-first search. Il costruttore impiega V+E nel caso peggiore. Algoritmo BreadthFirstPaths La classe BreadthFirstPaths trova il percorso più breve (in numero di archi) tra una sorgente ed ogni altro nodo. Usa la breadth-first search. Il costruttore impiega tempo proporzionale a V+E. Algoritmo CC (Connected Components) La classe CC determina i component connessi in un grafo indiretto. Dà anche la possibilità di verificare se due vertici sono nello stessa component connessa. Una componente connessa è un sottografo in cui tra due qualsiasi vertici c è un cammino, e nessuno è collegato ai vertici degli altri sottografi. Questa classe usa la depth-first search. Algoritmo Bipartite Un grafo bipartito è un grafo tale che l'insieme dei suoi vertici si può partizionare in due sottoinsiemi tali che ogni vertice di una di queste due parti è collegato solo a vertici dell'altra. La classe Bipartite determina se un grafo è bipartite. Usa la depthfirst search. Algoritmo Cycle La classe Cycle determina se nel grafo è presente un ciclo. Se si, il metodo hascycle ritorna 1. Usa la depth-first search. Algoritmo SymbolGraph La classe SymbolGraph rappresenta un grafo indiretto dove i vertici sono etichettati da stringhe. Supporta l inizializzazione di un SymbolGraph da file.

4 Algoritmo DegreesOfSeparation La classe DegreesOfSeparation provvede a individuare la distanza tra un elemento sorgente e tutti gli altri. Un esempio di utilizzo è nei social network. Il tempo d esecuzione è proporzionale al numero di connessioni. Algoritmo Digraph GRAFI DIRETTI La classe Digraph rappresenta un grafo diretto di vertici V. Permette l operazione di aggiunta di un arco, il conoscere il numero di vertici e archi. Sono possibili selfloops. Per implementarlo sono usate liste di adiacenza. Tutte le operazioni prendono tempo costante nel caso peggiore. Algoritmo DigraphGenerator La classe DigraphGenerator consente tramite metodi static, la creazione di vari tipi di grafi diretti (random, bipartite, ad albero, ecc.) Algoritmo DirectedDFS La classe DirectedDFS determina quali sono I vertici connessi a una data sorgente s. Il costruttore prende tempo V+E nel caso peggiore. Algoritmo DepthFirstDirectedPaths La classe DepthFirstDirectedPaths restituisce, se possibile, un percorso da una sorgente s ad ogni altro vertice del grafo. Per implementare viene usata la depth-first search. Il costruttore impiega V+E nel caso peggiore. Algoritmo DirectedCycle La classe DirectedCycle determina se nel grafo è presente un ciclo. Se si, il metodo hascycle ritorna 1. Usa la depth-first search Algoritmo DepthFirstOrder La classe DepthFirstOrder determina l ordine dei vertici all interno di un digraph in preorder, postorder e inorder, usando il depth-first search. Il costruttore impiega tempo proporzionale a V+E. Algoritmo Topological

5 La classe Topological determina se un grafo ha un ordine topologico ( un ordinamento lineare di tutti i vertici). Un digraph ha ordine topologico solo se è un DAG(grafo aciclico diretto). Usa la depth-first search. Il costruttore prende tempo proporzionale a V+E. Algoritmo BreadthFirstDirectedPaths La classe BreadthDirectedFirstPaths determina il percorso più breve da un vertice sorgente a tutti gli altri vertici. Usa la breadth-first search. Algoritmo TransitiveClosure La classe TransitiveClosure computa la chiusura transitive per un digraph. L implementazione usa la depth-first search da ogni vertice. Algoritmo SymbolDigraph La classe Symboldigraph rappresenta un grafo indiretto dove i vertici sono etichettati da stringhe. Supporta l inizializzazione di un SymbolDigraph da file. Algoritmo KosarajuSharirSCC La classe KosarajuSharirSCC determina se un digraph è fortemente connesso. Un grafo orientato si dice fortemente connesso se esiste un cammino da v a w per ogni coppia v,w V. L implementazione usa l algoritmo Kosaraju-Sharir. Il costruttore prende tempo proporzionale a V+E. Algoritmo TarjanSCC La classe TarjanSCC determina se un digraph è fortemente connesso. Un grafo orientato si dice fortemente connesso se esiste un cammino da v a w per ogni coppia v,w V. L implementazione usa l algoritmo Tarjan. Il costruttore prende tempo proporzionale a V+E. Algoritmo GabowSCC La classe GabowSCC determina se un digraph è fortemente connesso. Un grafo orientato si dice fortemente connesso se esiste un cammino da v a w per ogni coppia v,w V. L implementazione usa l algoritmo Gabow. Il costruttore prende tempo proporzionale a V+E.

6 GRAFI INDIRETTI con PESO Questo tipo di grafi è tendenzialmente usato per il calcolo dell albero di copertura minimo. Algoritmo EdgeWeightedGraph La classe EdgeWeightedGraph rappresenta un grafo indiretto con peso di vertici V. Permette l operazione di aggiunta di un arco, il conoscere il numero di vertici e archi. Sono possibili self-loops. Per implementarlo sono usate liste di adiacenza. Tutte le operazioni prendono tempo costante nel caso peggiore. Algoritmo Edge La classe Edge crea un arco in un grafo indiretto con peso. Ogni arco consiste nello specificare due vertici. Algoritmo LazyPrimMST La classe LazyPrimMST calcola l albero minimo di copertura in un grafo non orientate con peso. Il peso può essere positivo o negativo. Se il grafo non è connesso, calcolerà la foresta di copertura minima. Il metodo weight() restituisce il peso minimo dell albero. Viene usato la versione lazy dell algoritmo di Prim. Il costruttore prende tempo proporzionale a E log E. Algoritmo PrimMST La classe PrimMST calcola l albero minimo di copertura in un grafo non orientate con peso. Il peso può essere positivo o negativo. Se il grafo non è connesso, calcolerà la foresta di copertura minima. Il metodo weight() restituisce il peso minimo dell albero. Viene usato l algoritmo di Prim. Il costruttore prende tempo proporzionale a E log V. Algoritmo KruskalMST La classe KruskalMST calcola l albero minimo di copertura in un grafo non orientate con peso. Il peso può essere positivo o negativo. Se il grafo non è connesso, calcolerà la foresta di copertura minima. Il metodo weight() restituisce il peso minimo dell albero. Viene usato l algoritmo di Prim. Il costruttore prende tempo proporzionale a E log V. Algoritmo BoruvkaMST La classe BoruvkaMST calcola l albero minimo di copertura in un grafo non orientate con peso. Il peso può essere positivo o negativo. Se il grafo non è connesso, calcolerà la foresta di copertura minima. Il metodo weight() restituisce il peso

7 minimo dell albero. Viene usato l algoritmo di Prim. Il costruttore prende tempo proporzionale a E log V. GRAFI DIRETTI con PESO Questo tipo di grafi è tendenzialmente usato per il calcolo del percorso minimo. Algoritmo EdgeWeightedDigraph La classe EdgeWeightedDigraph rappresenta un grafo indiretto con peso di vertici V. Permette l operazione di aggiunta di un arco, il conoscere il numero di vertici e archi. Sono possibili self-loops. Per implementarlo sono usate liste di adiacenza. Tutte le operazioni prendono tempo costante nel caso peggiore. Algoritmo DirectedEdge La classe DirectedEdge crea un arco in un grafo indiretto con peso. Ogni arco consiste nello specificare due vertici. Qui bisogna inserire la direzione. Algoritmo DijkstraSP La classe DijkstraSP determina il percorso minimo in un grafo orientato con peso dove I pesi degli archi sono non negative. Si usa ovviamente l implementazione dell algoritmo di Dijkstra. Il costruttore prende tempo proporzionale a E log V. Algoritmo AcyclicSP La classe AcyclicSP determina il percorso minimo da singola sorgente in un DAG. Il peso degli archi può essere positive, negative o zerio. L implementazione usa un algoritmo basato sull ordinamento topologico. Il costruttore prente tempo V+E. Algoritmo AcyclicLP La classe AcyclicLP determina il percorso più lungo da singola sorgente in un DAG. Il peso degli archi può essere positive, negative o zerio. L implementazione usa un algoritmo basato sull ordinamento topologico. Il costruttore prente tempo V+E. Algoritmo CPM (critical path method) La classe CPM risolve il problema del job scheduling. Riduce il problema alla risoluzione del problema del percorso più lungo in un DAG. Costruice un DAG dalle specifiche del problema dello job scheduling. Usa l algoritmo AcyclicLP. Il tempo d esecuzione è proporzionale a V+E.

8 Algoritmo BellmanFordSP La classe BellmanFordSP resolve il problema del calcolo del percorso minimo da sorgente singola in un grafo orientato con peso con nessun ciclo negativo. Il peso dell arco può essere positive, negative o zero. L algoritmo restituisce o il percorso minimo o informa che c è un ciclo negative. Usa l algoritmo Bellman-Ford-Moore. Il costruttore prende tempo proporzionale a V(V+E). Algoritmo EdgeWeightedDirectedCycle La classe EdgeWeightedDirectedCycle determina se un grafo orientato con peso ha un ciclo diretto o no. Se si, il metodo hascycle ritorna 1. Usa la depth-first search. Il costruttore prende tempo proporzionale a V+E. Algoritmo Arbitrage La classe Arbitrage class provvede a trovare ad un cliente un opportunità in una tabella di scambio valuta costruendo una rappresentazione della tabella in un grafo oreintato con peso. Trovando un ciclo negative nel grafo orientato, c è l opportunità di guadagno. L implementazione usa l algoritmo Bellman-Ford per trovare il ciclo negativo. Il tempo d esecuzione è proporzionale a V 3 Algoritmo FloydWarshall La classe FloydWarshall trova il percorso minimo tra tutte le coppie in un grafo orientato con peso che non ha ciclo negative. Il peso di un arco può essere positivo, negativo o zero. L algoritmo quindi restituisce o il percorso più breve per ogni coppia o un ciclo negative. L implementazione usa l algoritmo di Floyd-Warshall. Il costuttore prende tempo proporzionale a V 3 Algoritmo AdjMatrixEdgeWeightedDigraph La classe AdjMatrixEdgeWeightedDigraph rappresenta un grafo orientato con peso dove ogni arco è del tipo DirectedEdge. Supporta le due operazioni principali: aggiungere un arco e iterare per ogni vertice che si incontra partendo da una sorgente. Ha anche metodi per tornare numero di vertici e di archi. Sono permessi i self loops. L implementazione come rappresentazione una matrice di adiacenza. Tutte le operazioni richiedono tempo costante. CONCLUSIONI In generale si può concludere che, paragonando gli algoritmi che svolgono gli stessi compiti sui grafi orientati e sui grafi non orientati, gli algoritmi relativi ai primi tendono ad avere performance migliore. Ciò è aspettato, perché avendo gli archi una direzione, diminuiscono i percorsi e i collegamenti che ci sono tra i vertici.

TSP con eliminazione di sottocicli

TSP con eliminazione di sottocicli TSP con eliminazione di sottocicli Un commesso viaggiatore deve visitare 7 clienti in modo da minimizzare la distanza percorsa. Le distanze (in Km) tra ognuno dei clienti sono come segue: 7-8 9 7 9-8 79

Dettagli

Laboratorio di Programmazione II Corso di Laurea in Bioinformatica Dipartimento di Informatica - Università di Verona

Laboratorio di Programmazione II Corso di Laurea in Bioinformatica Dipartimento di Informatica - Università di Verona e e Laboratorio di Programmazione II Corso di Laurea in Bioinformatica Dipartimento di Informatica - Università di Verona Sommario e ed implementazione in Java Visita di un grafo e e Concetti di base Struttura

Dettagli

Algoritmi di Ricerca. Esempi di programmi Java

Algoritmi di Ricerca. Esempi di programmi Java Fondamenti di Informatica Algoritmi di Ricerca Esempi di programmi Java Fondamenti di Informatica - D. Talia - UNICAL 1 Ricerca in una sequenza di elementi Data una sequenza di elementi, occorre verificare

Dettagli

Appunti di Algoritmi e Strutture Dati. Grafi. Gianfranco Gallizia

Appunti di Algoritmi e Strutture Dati. Grafi. Gianfranco Gallizia Appunti di Algoritmi e Strutture Dati Grafi Gianfranco Gallizia 12 Dicembre 2004 2 Indice 1 Grafi 5 1.1 Definizione.............................. 5 1.2 Implementazione........................... 5 1.2.1

Dettagli

Esercizi su. Funzioni

Esercizi su. Funzioni Esercizi su Funzioni ๒ Varie Tracce extra Sul sito del corso ๓ Esercizi funz_max.cc funz_fattoriale.cc ๔ Documentazione Il codice va documentato (commentato) Leggibilità Riduzione degli errori Manutenibilità

Dettagli

PROVA FINALE V. AULETTA G. PERSIANO ALGORITMI II - -MAGIS INFO

PROVA FINALE V. AULETTA G. PERSIANO ALGORITMI II - -MAGIS INFO PROVA FINALE V. AULETTA G. PERSIANO ALGORITMI II - -MAGIS INFO 1. Load Balancing Un istanza del problema del load balancing consiste di una sequenza p 1,..., p n di interi positivi (pesi dei job) e un

Dettagli

Algoritmi. Matricole dispari Prof.ssa Anselmo. Pre-appello del 15 Gennaio 2015. Attenzione:

Algoritmi. Matricole dispari Prof.ssa Anselmo. Pre-appello del 15 Gennaio 2015. Attenzione: COGNOME: Nome: Algoritmi Matricole dispari Prof.ssa Anselmo Pre-appello del 15 Gennaio 2015 Attenzione: Inserire i propri dati nell apposito spazio soprastante e sottostante. Non voltare la pagina finché

Dettagli

Uso di base delle funzioni in Microsoft Excel

Uso di base delle funzioni in Microsoft Excel Uso di base delle funzioni in Microsoft Excel Le funzioni Una funzione è un operatore che applicato a uno o più argomenti (valori, siano essi numeri con virgola, numeri interi, stringhe di caratteri) restituisce

Dettagli

Corso di Informatica Corso di Laurea in Ingegneria Gestionale a.a. 2005-06 Secondo Compitino 17 Dicembre 2005

Corso di Informatica Corso di Laurea in Ingegneria Gestionale a.a. 2005-06 Secondo Compitino 17 Dicembre 2005 Studente (Cognome Nome): Matricola: Corso di Informatica Corso di Laurea in Ingegneria Gestionale a.a. 2005-06 Secondo Compitino 17 Dicembre 2005 Si noti che le soluzioni ai quesiti saranno considerate

Dettagli

12 - Introduzione alla Programmazione Orientata agli Oggetti (Object Oriented Programming OOP)

12 - Introduzione alla Programmazione Orientata agli Oggetti (Object Oriented Programming OOP) 12 - Introduzione alla Programmazione Orientata agli Oggetti (Object Oriented Programming OOP) Programmazione e analisi di dati Modulo A: Programmazione in Java Paolo Milazzo Dipartimento di Informatica,

Dettagli

LABORATORIO DI PROGRAMMAZIONE 2012 2013 EDIZIONE 1, TURNO B

LABORATORIO DI PROGRAMMAZIONE 2012 2013 EDIZIONE 1, TURNO B LABORATORIO DI PROGRAMMAZIONE 2012 2013 EDIZIONE 1, TURNO B 23.XI.2012 VINCENZO MARRA Indice Esercizio 1 1 Menu 1 Tempo: 35 min. 2 Commento 1 2 Esercizio 2 2 Ordinamento e ricerca binaria con la classe

Dettagli

TSP con eliminazione di sottocicli

TSP con eliminazione di sottocicli TSP con eliminazione di sottocicli Un commesso viaggiatore deve visitare 7 clienti in modo da minimizzare la distanza percorsa. Le distanze (in Km) tra ognuno dei clienti sono come segue: 3 5 7-8 9 57

Dettagli

Guida all uso delle Web View su ios

Guida all uso delle Web View su ios Guida all uso delle Web View su ios Tesina per il corso di Programmazione di Sistemi Mobile Lorenzo Pellegrini Matricola: 0000653299 Cosa sono le Web View? Le web view sono componenti grafiche, integrabili

Dettagli

Sono casi particolari di MCF : SPT (cammini minimi) non vi sono vincoli di capacità superiore (solo x ij > 0) (i, j) A : c ij, costo di percorrenza

Sono casi particolari di MCF : SPT (cammini minimi) non vi sono vincoli di capacità superiore (solo x ij > 0) (i, j) A : c ij, costo di percorrenza Il problema di flusso di costo minimo (MCF) Dati : grafo orientato G = ( N, A ) i N, deficit del nodo i : b i (i, j) A u ij, capacità superiore (max quantità di flusso che può transitare) c ij, costo di

Dettagli

Algoritmi di Visita di Grafi. Damiano Macedonio mace@unive.it

Algoritmi di Visita di Grafi. Damiano Macedonio mace@unive.it lgoritmi di Visita di rafi amiano Macedonio mace@unive.it Original work opyright lberto Montresor, Università di Trento, Italy Modifications opyright 00 0, Moreno Marzolla, Università di ologna, Italy

Dettagli

Obiettivi dell esercitazione. Requisiti (cont.) Requisiti. Università di Roma La Sapienza A.A. 2008-2009. Facoltà di Ingegneria Sede di Latina

Obiettivi dell esercitazione. Requisiti (cont.) Requisiti. Università di Roma La Sapienza A.A. 2008-2009. Facoltà di Ingegneria Sede di Latina Università di Roma La Sapienza A.A. 2008-2009 Facoltà di Ingegneria Sede di Latina Laurea in Ingegneria Informatica ed Ingegneria dell Informazione Corso di PROGETTAZIONE DEL SOFTWARE Esercitazione sulla

Dettagli

Grafi. Moreno Marzolla Dip. di Informatica Scienza e Ingegneria Università di Bologna. moreno.marzolla@unibo.it http://www.moreno.marzolla.

Grafi. 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)

Dettagli

MATEMATICA DEL DISCRETO elementi di teoria dei grafi. anno acc. 2009/2010

MATEMATICA DEL DISCRETO elementi di teoria dei grafi. anno acc. 2009/2010 elementi di teoria dei grafi anno acc. 2009/2010 Grafi semplici Un grafo semplice G è una coppia ordinata (V(G), L(G)), ove V(G) è un insieme finito e non vuoto di elementi detti vertici o nodi di G, mentre

Dettagli

STRUTTURE NON LINEARI

STRUTTURE NON LINEARI PR1 Lezione 13: STRUTTURE NON LINEARI Michele Nappi mnappi@unisa.it www.dmi.unisa.it/people/nappi Per la realizzazione della presentazione è stato utilizzato in parte materiale didattico prodotto da Oronzo

Dettagli

Minimo Albero Ricoprente

Minimo Albero Ricoprente Minimo lbero Ricoprente Pag. 1/20 Minimo lbero Ricoprente Il problema della definizione di un Minimo lbero Ricoprente trova applicazione pratica in diverse aree di studio, quali ad esempio la progettazione

Dettagli

Crittografia. Primalità e Fattorizzazione. Corso di Laurea Specialistica. in Informatica

Crittografia. Primalità e Fattorizzazione. Corso di Laurea Specialistica. in Informatica Crittografia Corso di Laurea Specialistica in Informatica Primalità e Fattorizzazione Alberto Leporati Dipartimento di Informatica, Sistemistica e Comunicazione Università degli Studi di Milano Bicocca

Dettagli

Analisi di una Rete Sociale

Analisi di una Rete Sociale 2012 Analisi di una Rete Sociale Alessandro Lovati Matricola 626053 Comunicazione Digitale ord. F47 26/01/2012 Indice : 1. Obiettivo del progetto 2. Realizzazione 3. Analisi dei risultati 3.1. Numero di

Dettagli

Studente: SANTORO MC. Matricola : 528

Studente: SANTORO MC. Matricola : 528 CORSO di LAUREA in INFORMATICA Corso di CALCOLO NUMERICO a.a. 2004-05 Studente: SANTORO MC. Matricola : 528 PROGETTO PER L ESAME 1. Sviluppare una versione dell algoritmo di Gauss per sistemi con matrice

Dettagli

Programmazione a Oggetti e JAVA. Prof. B.Buttarazzi A.A. 2012/2013

Programmazione a Oggetti e JAVA. Prof. B.Buttarazzi A.A. 2012/2013 Programmazione a Oggetti e JAVA Prof. B.Buttarazzi A.A. 2012/2013 Relazioni tra classi Ereditarietà Generalizzazione Specializzazione Aggregazione Composizione Dipendenza Associazione Sommario Relazioni

Dettagli

Università degli Studi di Napoli Parthenope Facoltà di Scienze e Tecnologie Corso di Laurea in Informatica Generale

Università degli Studi di Napoli Parthenope Facoltà di Scienze e Tecnologie Corso di Laurea in Informatica Generale Università degli Studi di Napoli Parthenope Facoltà di Scienze e Tecnologie Corso di Laurea in Informatica Generale Progetto realizzato per l esame di Tecnologie Web Prof.:Raffaele Montella Studente: Vitiello

Dettagli

Corso di Laurea in Ingegneria Gestionale Esame di Informatica a.a. 2010-11 13 settembre 2011

Corso di Laurea in Ingegneria Gestionale Esame di Informatica a.a. 2010-11 13 settembre 2011 Cognome Nome Matricola Postazione PC Corso di Laurea in Ingegneria Gestionale Esame di Informatica a.a. 2010-11 13 settembre 2011 Testo Il database di un videonoleggio è costituito da due vettori paralleli.

Dettagli

Manuale Operativo per l utilizzo della piattaforma E-Learning@AQ. Versione 1.1

Manuale Operativo per l utilizzo della piattaforma E-Learning@AQ. Versione 1.1 Manuale Operativo per l utilizzo della piattaforma E-Learning@AQ Versione 1.1 Autore Antonio Barbieri, antonio.barbieri@gmail.com Data inizio compilazione 11 maggio 2009 Data revisione 14 maggio 2009 Sommario

Dettagli

Funzioni in C. Violetta Lonati

Funzioni in C. Violetta Lonati Università degli studi di Milano Dipartimento di Scienze dell Informazione Laboratorio di algoritmi e strutture dati Corso di laurea in Informatica Funzioni - in breve: Funzioni Definizione di funzioni

Dettagli

Identificare le classi in un sistema

Identificare le classi in un sistema 3.7 (Caso di studio facoltativo) Pensare a oggetti: identificare le classi nella specifica del problema Cominciamo ad affrontare la progettazione del simulatore di ascensore introdotto nel capitolo. Iniziamo

Dettagli

COGNOME E NOME (IN STAMPATELLO) MATRICOLA

COGNOME E NOME (IN STAMPATELLO) MATRICOLA Politecnico di Milano Facoltà di Ingegneria dell Informazione Informatica 3 Proff. Ghezzi, Lanzi, Matera e Morzenti Seconda prova in itinere 4 Luglio 2005 COGNOME E NOME (IN STAMPATELLO) MATRICOLA Risolvere

Dettagli

Università degli Studi di L Aquila. Facoltà di Ingegneria. Corso di Laurea in Ingegneria Elettronica Corso di Sistemi Informativi

Università degli Studi di L Aquila. Facoltà di Ingegneria. Corso di Laurea in Ingegneria Elettronica Corso di Sistemi Informativi Università degli Studi di L Aquila Facoltà di Ingegneria Corso di Laurea in Ingegneria Elettronica Corso di Sistemi Informativi Prof. Gaetanino Paolone Dott. Ottavio Pascale a.a.2003-2004 Progetto Campo

Dettagli

b i 1,1,1 1,1,1 0,1,2 0,3,4

b i 1,1,1 1,1,1 0,1,2 0,3,4 V o Appello // RICERCA OPERATIVA - Corso A (a.a. 9/) Nome Cognome: Corso di Laurea: L C6 LS LM Matricola: ) Si consideri il problema di flusso di costo minimo in figura. Si verifichi se il flusso ammissibile

Dettagli

Elementi di UML (7): Diagrammi dei componenti e di deployment

Elementi di UML (7): Diagrammi dei componenti e di deployment Elementi di UML (7): Diagrammi dei componenti e di deployment Università degli Studi di Bologna Facoltà di Scienze MM. FF. NN. Corso di Laurea in Scienze di Internet Anno Accademico 2004-2005 Laboratorio

Dettagli

Esercitazione n 4. Obiettivi

Esercitazione n 4. Obiettivi Esercitazione n 4 Obiettivi Progettare e implementare per intero un componente software in Java Linguaggio Java: Classi astratte Utilizzo di costruttori e metodi di superclasse Polimorfismo Esempio guida:

Dettagli

NETWORKING & BUSINESS: LA CREAZIONE DI UN ALLEANZA DI VALORE IL VALORE DEL NETWORKING PER IL CLIENTE: COME CREARLO E COME COMUNICARLO

NETWORKING & BUSINESS: LA CREAZIONE DI UN ALLEANZA DI VALORE IL VALORE DEL NETWORKING PER IL CLIENTE: COME CREARLO E COME COMUNICARLO S.A.F. SCUOLA DI ALTA FORMAZIONE LUIGI MARTINO NETWORKING & BUSINESS: LA CREAZIONE DI UN ALLEANZA DI VALORE IL VALORE DEL NETWORKING PER IL CLIENTE: COME CREARLO E COME COMUNICARLO ALESSANDRO AUGUSTO 30

Dettagli

UML Diagrammi delle classi. UML Diagramma classi 1

UML Diagrammi delle classi. UML Diagramma classi 1 UML Diagrammi delle classi UML Diagramma classi 1 Diagramma delle classi Non è nei nostri obiettivi affrontare UML nel suo complesso Ci concentreremo sui diagrammi delle classi che ci forniscono un linguaggio

Dettagli

Corso di Informatica

Corso di Informatica Corso di Informatica Modulo T3 1-Sottoprogrammi 1 Prerequisiti Tecnica top-down Programmazione elementare 2 1 Introduzione Lo scopo di questa Unità è utilizzare la metodologia di progettazione top-down

Dettagli

Architetture software

Architetture software Corso di Laurea Magistrale in Ingegneria Informatica Corso di Ingegneria del A. A. 2013-2014 Architettura software 1 Architetture software Sommario Definizioni 2 Architettura Definizione. L architettura

Dettagli

A intervalli regolari ogni router manda la sua tabella a tutti i vicini, e riceve quelle dei vicini.

A intervalli regolari ogni router manda la sua tabella a tutti i vicini, e riceve quelle dei vicini. Algoritmi di routing dinamici (pag.89) UdA2_L5 Nelle moderne reti si usano algoritmi dinamici, che si adattano automaticamente ai cambiamenti della rete. Questi algoritmi non sono eseguiti solo all'avvio

Dettagli

La firma digitale. Autore: Monica Mascia

La firma digitale. Autore: Monica Mascia La firma digitale Università degli studi di Cagliari Facoltà di giurisprudenza Diritto privato dell informatica A.A. 2006/2007 Docenti: prof. Bruno Troisi Dott. Massimo Farina Autore: Monica Mascia Che

Dettagli

Esercizi per il corso di Algoritmi e Strutture Dati

Esercizi per il corso di Algoritmi e Strutture Dati 1 Esercizi per il corso di Algoritmi e Strutture Dati Esercizi sulla Tecnica Divide et Impera N.B. Tutti gli algoritmi vanno scritti in pseudocodice (non in Java, né in C++, etc. ). Di tutti gli algoritmi

Dettagli

Università di Roma La Sapienza, Facoltà di Ingegneria

Università di Roma La Sapienza, Facoltà di Ingegneria Università di Roma La Sapienza, Facoltà di Ingegneria Corso di PROGETTAZIONE DEL SOFTWARE I (Ing. Informatica, Nuovo Ordinamento) Prof. Marco Cadoli, Canale A-L, A.A. 2005-06 Esercitazione numero 6 LA

Dettagli

Prova di Laboratorio di Programmazione

Prova di Laboratorio di Programmazione Prova di Laboratorio di Programmazione 6 febbraio 015 ATTENZIONE: Non è possibile usare le classi del package prog.io del libro di testo. Oltre ai metodi richiesti in ciascuna classe, è opportuno implementare

Dettagli

Operazioni di Comunicazione di base. Cap.4

Operazioni di Comunicazione di base. Cap.4 Operazioni di Comunicazione di base Cap.4 1 Introduzione: operazioni di comunicazioni collettive Gli scambi collettivi coinvolgono diversi processori Sono usati massicciamente negli algoritmi paralleli

Dettagli

DATABASE. A cura di Massimiliano Buschi

DATABASE. A cura di Massimiliano Buschi DATABASE A cura di Massimiliano Buschi Introduzione Con Microsoft Access: Immissione dati e interrogazione Interfaccia per applicazioni e report Ma prima bisogna definire alcune conoscenze di base sui

Dettagli

Metodi Computazionali

Metodi Computazionali Metodi Computazionali Elisabetta Fersini fersini@disco.unimib.it A.A. 2009/2010 Catene di Markov Applicazioni: Fisica dinamica dei sistemi Web simulazione del comportamento utente Biologia evoluzione delle

Dettagli

Progetto di simulazione molecolare per il corso di Complementi di algoritmi A.A. 2005-06

Progetto di simulazione molecolare per il corso di Complementi di algoritmi A.A. 2005-06 Progetto di simulazione molecolare per il corso di Complementi di algoritmi A.A. 2005-06 13 febbraio 2006 1 Descrizione Il progetto si compone delle seguenti fasi: 1. caricamento di soluzioni in formato

Dettagli

Studente (Cognome Nome): Corso di Informatica Corso di Laurea in Ingegneria Gestionale a.a. 2006-07 Secondo Compitino 21 Dicembre 2006

Studente (Cognome Nome): Corso di Informatica Corso di Laurea in Ingegneria Gestionale a.a. 2006-07 Secondo Compitino 21 Dicembre 2006 Studente (Cognome Nome): Matricola: Corso di Informatica Corso di Laurea in Ingegneria Gestionale a.a. 2006-07 Secondo Compitino 21 Dicembre 2006 Si noti che le soluzioni ai quesiti saranno considerate

Dettagli

Anno 3. Funzioni: dominio, codominio e campo di esistenza

Anno 3. Funzioni: dominio, codominio e campo di esistenza Anno 3 Funzioni: dominio, codominio e campo di esistenza 1 Introduzione In questa lezione parleremo delle funzioni. Ne daremo una definizione e impareremo a studiarne il dominio in relazione alle diverse

Dettagli

Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2013-14. Pietro Frasca.

Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2013-14. Pietro Frasca. Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2013-14 Pietro Frasca Lezione 11 Martedì 12-11-2013 1 Tecniche di allocazione mediante free list Generalmente,

Dettagli

Come archiviare i dati per le scienze sociali

Come archiviare i dati per le scienze sociali Come archiviare i dati per le scienze sociali ADPSS-SOCIODATA Archivio Dati e Programmi per le Scienze Sociali www.sociologiadip.unimib.it/sociodata E-mail: adpss.sociologia@unimib.it Tel.: 02 64487513

Dettagli

Esercizio 1. Esercizio 2

Esercizio 1. Esercizio 2 A Ricerca Operativa Primo appello 4 novembre 005 Esercizio Incontrate una ragazza con il suo cane Fido e vi chiedete che età possa avere. Lei sembra leggervi nel pensiero e vi dice: Non si chiede l età

Dettagli

Università degli Studi di Padova Dipartimento di Matematica. - Corso di Laurea in Informatica

Università degli Studi di Padova Dipartimento di Matematica. - Corso di Laurea in Informatica Università degli Studi di Padova Dipartimento di Matematica. - Corso di Laurea in Informatica Il presente esame scritto deve essere svolto in forma individuale in un tempo massimo di 60 minuti dalla sua

Dettagli

Elementi di informatica

Elementi di informatica Elementi di informatica Sistemi di numerazione posizionali Rappresentazione dei numeri Rappresentazione dei numeri nei calcolatori rappresentazioni finalizzate ad algoritmi efficienti per le operazioni

Dettagli

Concetto di Funzione e Procedura METODI in Java

Concetto di Funzione e Procedura METODI in Java Fondamenti di Informatica Concetto di Funzione e Procedura METODI in Java Fondamenti di Informatica - D. Talia - UNICAL 1 Metodi e Sottoprogrammi Mentre in Java tramite le classi e gli oggetti è possibile

Dettagli

Utilizzo delle formule in Excel

Utilizzo delle formule in Excel Utilizzo delle formule in Excel Excel è dotato di un potente motore di calcolo che può essere utilizzato per elaborare i dati immessi dagli utenti. I calcoli sono definiti mediante formule. Ogni formula

Dettagli

Realizzazione di una classe con un associazione

Realizzazione di una classe con un associazione Realizzazione di una classe con un associazione Nel realizzare una classe che è coinvolta in un associazione, ci dobbiamo chiedere se la classe ha responsabilità sull associazione. Diciamo che una classe

Dettagli

Progettazione del robot

Progettazione del robot Progettazione del robot MINDSTORMS EV3 Anche quest anno abbiamo deciso di usare unmattoncinolegomindstormsev3.sitratta di un evoluzione dellaversione precedentenxt2.0, migliorata sotto diversi aspetti.

Dettagli

La somma. Esempio: Il prodotto. Esempio:

La somma. Esempio: Il prodotto. Esempio: La somma L algoritmo della operazione di somma non cambia qualunque sia la base considerata. Naturalmente, le regole da imparare nel caso di una base b sono relative alle sole b 2 posssibili combinazioni

Dettagli

Esercizi Capitolo 6 - Alberi binari di ricerca

Esercizi Capitolo 6 - Alberi binari di ricerca Esercizi Capitolo 6 - Alberi binari di ricerca Alberto Montresor 23 settembre 200 Alcuni degli esercizi che seguono sono associati alle rispettive soluzioni. Se il vostro lettore PDF lo consente, è possibile

Dettagli

Appunti sulla Macchina di Turing. Macchina di Turing

Appunti sulla Macchina di Turing. Macchina di Turing Macchina di Turing Una macchina di Turing è costituita dai seguenti elementi (vedi fig. 1): a) una unità di memoria, detta memoria esterna, consistente in un nastro illimitato in entrambi i sensi e suddiviso

Dettagli

Università degli Studi di Messina

Università degli Studi di Messina Università degli Studi di Messina Guida alla Rendicontazione on-line delle Attività del Docente Versione della revisione: 2.02/2013-07 A cura di: Fabio Adelardi Università degli studi di Messina Centro

Dettagli

Veneto Lavoro via Ca' Marcello 67/b, 30172 Venezia-Mestre tel.: 041/2919311

Veneto Lavoro via Ca' Marcello 67/b, 30172 Venezia-Mestre tel.: 041/2919311 Veneto Lavoro via Ca' Marcello 67/b, 30172 Venezia-Mestre tel.: 041/2919311 INDICE 1. INTRODUZIONE... 3 1.1 SCADENZA... 3 1.2 CAUSALE DA UTILIZZARE... 3 2. MODALITÀ OPERATIVE DI COMUNICAZIONE DATI... 4

Dettagli

Alcuni Preliminari. Prodotto Cartesiano

Alcuni Preliminari. Prodotto Cartesiano Alcuni Preliminari Prodotto Cartesiano Dati due insiemi A e B, si definisce il loro prodotto cartesiano A x B come l insieme di tutte le coppie ordinate (a,b) con a! A e b! B. Es: dati A= {a,b,c} e B={,2,3}

Dettagli

Algoritmi e strutture dati. Codici di Huffman

Algoritmi e strutture dati. Codici di Huffman Algoritmi e strutture dati Codici di Huffman Memorizzazione dei dati Quando un file viene memorizzato, esso va memorizzato in qualche formato binario Modo più semplice: memorizzare il codice ASCII per

Dettagli

Uso di JUnit. Fondamenti di informatica Oggetti e Java. JUnit. Luca Cabibbo. ottobre 2012

Uso di JUnit. Fondamenti di informatica Oggetti e Java. JUnit. Luca Cabibbo. ottobre 2012 Fondamenti di informatica Oggetti e Java ottobre 2012 1 JUnit JUnit è uno strumento per assistere il programmatore Java nel testing JUnit consente di scrivere test di oggetti e classi Java i test sono

Dettagli

ITIS Mattei Sondrio. Appunti veloci su moodle versione 2.7

ITIS Mattei Sondrio. Appunti veloci su moodle versione 2.7 ITIS Mattei Sondrio Appunti veloci su moodle versione 2.7 Generalità Moodle è una piattaforma web per pubblicare corsi, creare test, depositare dispense ecc. Ci sono vari tipi di utenti che usano moodle:

Dettagli

Reflection in Java. Linguaggi Corso M-Z - Laurea in Ingegneria Informatica A.A. 2009-2010

Reflection in Java. Linguaggi Corso M-Z - Laurea in Ingegneria Informatica A.A. 2009-2010 Linguaggi Corso M-Z - Laurea in Ingegneria Informatica A.A. 2009-2010 Alessandro Longheu http://www.diit.unict.it/users/alongheu alessandro.longheu@diit.unict.it Reflection in Java 1 Reflection Riflessione

Dettagli

CUTPOINTS BRIDGES BLOCKS BLOCK GRAPHS - CUTPOINT GRAPHS

CUTPOINTS BRIDGES BLOCKS BLOCK GRAPHS - CUTPOINT GRAPHS CUTPOINTS BRIDGES BLOCKS BLOCK GRAPHS - CUTPOINT GRAPHS INTRODUZIONE Per conoscere la struttura di un grafo connesso è importante individuare nel grafo la distribuzione di certi punti detti cutpoints (punti

Dettagli

Esame di Ricerca Operativa del 19/01/2016

Esame di Ricerca Operativa del 19/01/2016 Esame di Ricerca Operativa del 19/01/201 (Cognome) (Nome) (Matricola) Esercizio 1. Una banca offre ai suoi clienti diversi tipi di prestito: mutuo casa, credito auto, credito famiglia, che rendono un interesse

Dettagli

Programmazione Orientata agli Oggetti in Linguaggio Java

Programmazione Orientata agli Oggetti in Linguaggio Java Programmazione Orientata agli Oggetti in Linguaggio Java Classi e Oggetti: Conclusioni Parte b versione 2.1 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima

Dettagli

Progetto MIPS/SPIM. Descrizione. Questa tipologia di progetto consiste in

Progetto MIPS/SPIM. Descrizione. Questa tipologia di progetto consiste in Progetto MIPS/SPIM Descrizione Questa tipologia di progetto consiste in Inoltre, Infine, Sviluppare un programma in linguaggio MIPS assembly Simulare il programma in QtSPIM Preparare una relazione del

Dettagli

Simulazione di una Rete di Interconnessione di una Compagnia Aerea

Simulazione di una Rete di Interconnessione di una Compagnia Aerea Simulazione di una Rete di Interconnessione di una Compagnia Aerea Progetto del corso di Algoritmi e Strutture Dati a.a. 2011/2012 December 4, 2011 1 Introduzione Il progetto consiste nella realizzazione

Dettagli

Siti web centrati sui dati Architettura MVC-2: i JavaBeans

Siti web centrati sui dati Architettura MVC-2: i JavaBeans Siti web centrati sui dati Architettura MVC-2: i JavaBeans 1 ALBERTO BELUSSI ANNO ACCADEMICO 2009/2010 Limiti dell approccio SEVLET UNICA La servlet svolge tre tipi di funzioni distinte: Interazione con

Dettagli

file://c:\documents%20and%20settings\maria\documenti\istruzioni_corso_elearning\istruzioni%20corso1.htm

file://c:\documents%20and%20settings\maria\documenti\istruzioni_corso_elearning\istruzioni%20corso1.htm Pagina 1 di 17 ISTRUZIONI PER LA FRUIZIONE DEL CORSO Qui trovi le spiegazioni sull utilizzo di questa piattaforma per la fruizione del corso che hai scelto, suddivise in schermate così come ti appaiono

Dettagli

Progetto Febbraio 2013 - Appello 1: Diffusione di tweets sul grafo di Twitter

Progetto Febbraio 2013 - Appello 1: Diffusione di tweets sul grafo di Twitter UNIVERSITÀ DEGLI STUDI DI MILANO, DIPARTIMENTO DI INFORMATICA LAUREA TRIENNALE IN COMUNICAZIONE DIGITALE CORSO DI RETI DI CALCOLATORI ANNO ACCADEMICO 2011/2012 Progetto Febbraio 2013 - Appello 1: Diffusione

Dettagli

1. Che cos è la multiprogrammazione? Si può realizzare su un sistema monoprocessore? 2. Quali sono i servizi offerti dai sistemi operativi?

1. Che cos è la multiprogrammazione? Si può realizzare su un sistema monoprocessore? 2. Quali sono i servizi offerti dai sistemi operativi? 1. Che cos è la multiprogrammazione? Si può realizzare su un sistema monoprocessore? 2. Quali sono i servizi offerti dai sistemi operativi? 1. La nozione di multiprogrammazione prevede la possibilità di

Dettagli

1. Considerazioni generali

1. Considerazioni generali 1. Considerazioni generali Modelli di shop scheduling In molti ambienti produttivi l esecuzione di un job richiede l esecuzione non simultanea di un certo numero di operazioni su macchine dedicate. Ogni

Dettagli

Esame di Ricerca Operativa del 19/01/2016

Esame di Ricerca Operativa del 19/01/2016 Esame di Ricerca Operativa del 9/0/06 (Cognome) (Nome) (Matricola) Esercizio. Una banca offre ai suoi clienti diversi tipi di prestito: mutuo casa, credito auto, credito famiglia, che rendono un interesse

Dettagli

Registratori di Cassa

Registratori di Cassa modulo Registratori di Cassa Interfacciamento con Registratore di Cassa RCH Nucleo@light GDO BREVE GUIDA ( su logiche di funzionamento e modalità d uso ) www.impresa24.ilsole24ore.com 1 Sommario Introduzione...

Dettagli

Ottimizzazione Multi Obiettivo

Ottimizzazione Multi Obiettivo Ottimizzazione Multi Obiettivo 1 Ottimizzazione Multi Obiettivo I problemi affrontati fino ad ora erano caratterizzati da una unica (e ben definita) funzione obiettivo. I problemi di ottimizzazione reali

Dettagli

Programmazione A.A. 2002-03. Programmazione Orientata agli Oggetti: Lavorare con gli oggetti ( Lezione XXVII)

Programmazione A.A. 2002-03. Programmazione Orientata agli Oggetti: Lavorare con gli oggetti ( Lezione XXVII) Programmazione A.A. 2002-03 I Programmazione Orientata agli Oggetti: Lavorare con gli oggetti ( Lezione XXVII) Prof. Giovanni Gallo Dr. Gianluca Cincotti Dipartimento di Matematica e Informatica Università

Dettagli

La prima applicazione Java. Creazione di oggetti - 1. La prima applicazione Java: schema di esecuzione. Gianpaolo Cugola - Sistemi Informativi in Rete

La prima applicazione Java. Creazione di oggetti - 1. La prima applicazione Java: schema di esecuzione. Gianpaolo Cugola - Sistemi Informativi in Rete La prima applicazione Java Programma MyFirstApplication Il programma visualizza una finestra vuota sullo schermo. Importo il package delle classi usate nel seguito. Dichiaro la classe MyFirstApplication

Dettagli

GUIDA 1. Processo di pre-immatricolazione on line LAUREE TRIENNALI, LAUREE MAGISTRALI A CICLO UNICO

GUIDA 1. Processo di pre-immatricolazione on line LAUREE TRIENNALI, LAUREE MAGISTRALI A CICLO UNICO GUIDA 1 Processo di pre-immatricolazione on line LAUREE TRIENNALI, LAUREE MAGISTRALI A CICLO UNICO A.A. 2016/2017 ATTENZIONE Prima di procedere con la pre-immatricolazione on line seguire le seguenti raccomandazioni:

Dettagli

Introduzione al MATLAB c Parte 2

Introduzione al MATLAB c Parte 2 Introduzione al MATLAB c Parte 2 Lucia Gastaldi Dipartimento di Matematica, http://dm.ing.unibs.it/gastaldi/ 18 gennaio 2008 Outline 1 M-file di tipo Script e Function Script Function 2 Costrutti di programmazione

Dettagli

Complemento al corso di Fondamenti di Informatica I corsi di laurea in ingegneria, settore dell informazione Università la Sapienza Consorzio Nettuno

Complemento al corso di Fondamenti di Informatica I corsi di laurea in ingegneria, settore dell informazione Università la Sapienza Consorzio Nettuno Rappresentazione di numeri Complemento al corso di Fondamenti di Informatica I corsi di laurea in ingegneria, settore dell informazione Università la Sapienza Consorzio Nettuno Un numero e un entità teorica,

Dettagli

[ Analisi della. concentrazione] di Luca Vanzulli. Pag. 1 di 1

[ Analisi della. concentrazione] di Luca Vanzulli. Pag. 1 di 1 [ Analisi della concentrazione] di Luca Vanzulli Pag. 1 di 1 LA CONCENTRAZIONE NELL ANALISI DELLE VENDITE L analisi periodica delle vendite rappresenta un preziosissimo indicatore per il monitoraggio del

Dettagli

Complessità Computazionale

Complessità Computazionale Complessità Computazionale Analisi Algoritmi e pseudocodice Cosa significa analizzare un algoritmo Modello di calcolo Analisi del caso peggiore e del caso medio Esempio di algoritmo in pseudocodice INSERTION

Dettagli

Inizializzazione degli Host. BOOTP e DHCP

Inizializzazione degli Host. BOOTP e DHCP BOOTP e DHCP a.a. 2002/03 Prof. Vincenzo Auletta auletta@dia.unisa.it http://www.dia.unisa.it/~auletta/ Università degli studi di Salerno Laurea e Diploma in Informatica 1 Inizializzazione degli Host Un

Dettagli

Architettura MVC-2: i JavaBeans

Architettura MVC-2: i JavaBeans Siti web centrati sui dati Architettura MVC-2: i JavaBeans Alberto Belussi anno accademico 2008/2009 Limiti dell approccio SEVLET UNICA La servlet svolge tre tipi di funzioni distinte: Interazione con

Dettagli

Tipi primitivi. Ad esempio, il codice seguente dichiara una variabile di tipo intero, le assegna il valore 5 e stampa a schermo il suo contenuto:

Tipi primitivi. Ad esempio, il codice seguente dichiara una variabile di tipo intero, le assegna il valore 5 e stampa a schermo il suo contenuto: Tipi primitivi Il linguaggio Java offre alcuni tipi di dato primitivi Una variabile di tipo primitivo può essere utilizzata direttamente. Non è un riferimento e non ha senso tentare di istanziarla mediante

Dettagli

3 CENNI DI TEORIA DELLA COMPLESSITA COMPUTAZIONALE. E. Amaldi Fondamenti di R.O. Politecnico di Milano 1

3 CENNI DI TEORIA DELLA COMPLESSITA COMPUTAZIONALE. E. Amaldi Fondamenti di R.O. Politecnico di Milano 1 3 CENNI DI TEORIA DELLA COMPLESSITA COMPUTAZIONALE E. Amaldi Fondamenti di R.O. Politecnico di Milano 1 Scopo: Stimare l onere computazionale per risolvere problemi di ottimizzazione e di altra natura

Dettagli

Quando A e B coincidono una coppia ordinata é determinata anche dalla loro posizione.

Quando A e B coincidono una coppia ordinata é determinata anche dalla loro posizione. Grafi ed Alberi Pag. /26 Grafi ed Alberi In questo capitolo richiameremo i principali concetti di due ADT che ricorreranno puntualmente nel corso della nostra trattazione: i grafi e gli alberi. Naturale

Dettagli

DATA BASE SCONTRINI. M46 GDS documentazione Verticale R0

DATA BASE SCONTRINI. M46 GDS documentazione Verticale R0 DATA BASE SCONTRINI Introduzione 2. Soluzione proposta 3. Ambiente di configurazione 4. Programma di acquisizione file scontrini 5. Programma di visualizzazione scontrini 6. Programma di visualizzazione

Dettagli

Introduzione a Dev-C++

Introduzione a Dev-C++ Introduzione a Dev-C++ Università degli Studi di Brescia Docente: Massimiliano Giacomin Elementi di Informatica e Programmazione Università di Brescia 1 Note: Dev-C++ richiede Windows 95/98/NT/2000/XP

Dettagli

Inizializzazione, Assegnamento e Distruzione di Classi

Inizializzazione, Assegnamento e Distruzione di Classi Inizializzazione, Assegnamento e Distruzione di Classi Lezione 9 Operazioni Automatiche In ogni programma C++ oggetti classe vengono gestiti automaticamente dal compilatore Inizializzati al momento della

Dettagli

Metodi e Modelli per l Ottimizzazione Combinatoria Il problema del flusso di costo minimo

Metodi e Modelli per l Ottimizzazione Combinatoria Il problema del flusso di costo minimo Metodi e Modelli per l Ottimizzazione Combinatoria Il problema del flusso di costo minimo L. De Giovanni G. Zambelli 1 Problema del flusso a costo minimo Il problema del flusso a costo minimo é definito

Dettagli

Corso di Informatica

Corso di Informatica Corso di Informatica Modulo T Scorrimento-Rotazione-Ricerca Prerequisiti Programmazione elementare Conoscenza ed uso di vettori Introduzione Lo scopo di questa Unità è approfondire il concetto di vettore

Dettagli

Introduzione. Cliente. Indirizzo cliente. CAP cliente. Città cliente. Telefono cliente

Introduzione. Cliente. Indirizzo cliente. CAP cliente. Città cliente. Telefono cliente Introduzione Just Italia srl, mediante le proprie venditrici, raccoglie ordinativi dai clienti attravenso una proposta d ordine cartacea, sulla quale vengono compilati manualmente i seguenti dati: Cliente

Dettagli

Progettazione : Design Pattern Creazionali

Progettazione : Design Pattern Creazionali Progettazione : Design Pattern Creazionali Alessandro Martinelli alessandro.martinelli@unipv.it 30 Novembre 2010 Progettazione : Design Pattern Creazionali Aspetti generali dei Design Pattern Creazionali

Dettagli