Le strutture dati in Java: liste, code 1
|
|
- Ilario Beretta
- 5 anni fa
- Visualizzazioni
Transcript
1 AA 03/04 Le sruure dai I programmi lavorano su informazioni Corso di laurea in Informaica Le informazioni sono spesso organizzae in avole Che non sono semplicemene una massa di dai numerici Ma è che coinvolgono relazioni sruurali ra i dai In genere c è mola più informazione sruurale ra i dai di quella che sia necessario rappresenare 1 2 Proprieà delle sruure dai Le sruure dai hanno proprieà saiche e dinamiche che possono essere molo diverse Le sruure dai devono essere rappresenae e implemenae nei linguaggi di programmazione Spazio di memoria per l archiviazione La rappresenazione influenza le funzionalià Creazione, manipolazione, ricerca, accesso 3 Rappresenazione della sruura dai Decidere caso per caso quana sruura rappresenare Occorre considerare non solo la sruura dai ma anche la classe d operazioni da effeuare sui dai La rappresenazione dipende ano dalle proprieà inrinseche delle sruura dai quano dalle funzionalià che si desiderano Forma e funzione 4 Tabelle d informazioni Nella forma più semplice una abella è una lisa lineare di elemeni La sua relazione sruurale più imporane consene di rispondere a domande come Chi è il della lisa? Chi è l ulimo? Chi precede e chi segue un dao elemeno? Quani elemeni ci sono nella lisa? In alri casi una abella può essere a 2 o più dimensioni Può avere una sruura gerarchica ad albero Può essere una sruura più complessa con ramificazioni a reicolo Lise lineari Un insieme di n 0 di nodi le cui proprieà sruurali coinvolgono essenzialmene solo le posizioni lineari (a 1-dimensione) relaive dei nodi Se n 0, x[1] è il nodo allora k con 1<k< n, il k-esimo nodo x[k] è preceduo dal nodo x[k-1] ed è seguio dal nodo x[k+1]; inolre x[n] è l ulimo nodo 5 6 lise, code 1
2 AA 03/04 Operazioni sulle lise Le operazioni che vogliamo eseguire su una lisa, includono (non esclusivamene): Accedere al k-esimo nodo Inserire un nuovo nodo in una posizione opporuna Eliminare il k-esimo nodo Unire 2 o più lise Fare una copia di una lisa Deerminare il numero di nodi in una lisa Ordinare i nodi di una lisa secondo un crierio Cercare le occorrenze di una nodo con un paricolare valore Paricolari lise Sono frequeni lise lineari in cui inserimeni, cancellazioni e accesso ai dai avvengono quasi sempre solo in prima o in ulima posizione Sack o pila. Inserimeni e cancellazioni (e spesso anche gli accessi) avvengono solo a un esremo della lisa Coda. Inserimeni avvengono a un esremo della lisa e le cancellazioni all alro Deque (coda a doppi esremi). Inserimeni e cancellazioni possono avvenire ai 2 esremi della lisa 7 8 Esempio Nomenclaura Spesso vengono usai alri nomi per indicare sack e lise in genere LIFO. Las In Firs Ou, per sack FIFO. Firs In Firs Ou, per le code In paricolare per gli sack si usano i ermini Top o cima per indicare il elemeno dello sack Un binario moro ad una sazione di esa èrappresenabile con uno sack. Il reno ad uscire è l ulimo che è enrao 9 Boom o fine per indicare l ulimo elemeno Pop per eliminare l elemeno al op Push per inserire un nuovo dao 10 Rappresenazione di una lisa Lise saiche vs dinamiche A seconda della classe di operazioni più frequeni è uile una paricolare rappresenazione Non esise una singola rappresenazione che rende le operazioni ue ugualmene efficieni L accesso random alla k-esimo nodo è diffcile se conemporaneamene inseriamo e cancelliamo nodi Disinguiamo rappresenazioni di lise in funzione delle principali operazioni da eseguire 11 Le lise saiche sono quelle che adoano una rappresenazione saica Viene allocaa un area di memoria di dimensione prefissaa quindi hanno una dimensione fissa Le lise dinamiche adoano una rappresenazione dinamica L area di memoria per archiviare i nodi viene riservaa dinamicamene in esecuzione quando serve Possono avere una dimensione non prefissaa 12 lise, code 2
3 AA 03/04 Implemenazione di pile public void push(objec o) Aggiunge l oggeo passao come paramero sullo sack. Se lo sack è pieno solleva una OuOfBoundsSackExcepion public Objec pop() Ripora il riferimeno dell oggeo che sa al op dello sack. Se lo sack è vuoo solleva una EmpySackExcepion public boolean empy() Ripora rue se lo sack è vuoo, false alrimeni Sack() Il cosruore che cosruisce uno sack vuoo 13 L eccezione per sack vuoo public class EmpySackExcepion exends RunTimeExcepion { Un eccezione definia come esensione di RunTimeExcepion quindi non conrollaa Viene sollevaa dal meodo pop() 14 L eccezione per sack pieno Implemenazione saica public class OuOfBoundsSackExcepion exends RunTimeExcepion { Un eccezione definia come esensione di RunTimeExcepion quindi non conrollaa Può essere sollevaa dal meodo push() Per un implemenazione saica di sack, possiamo adoare un array di oggei Lo sack viene rappresenao come un array di riferimeni a Objec L array sarà predimensionao in modo conveniene Occorre enere presene la dimensione massima dell array Porà sempre essere possibile andare in overflow Implemenazione saica Implemenazione dinamica Ogni posizione dell array rappresena un nodo dello sack La posizione 0 viene usaa per conenere l elemeno più in basso dello sack. Un indice indica la cima dello sack Sack.java e l eccezioni EmpySackExcepion.java OuOfBoundsSackExcepion.java Si usa una lisa lineare concaenaa Olre all informazioni del nodo è necessario archiviare l indirizzo del nodo successivo Ogni nodo coniene un campo per conenere il riferimeno all oggeo con il valore che ci ineressa archiviare lise, code 3
4 AA 03/04 Rappresenazione del nodo La classe che rappresena il nodo dello sack Class NodoSack { Objec dao; NodoSack pros; La definizione è ricorsiva, cioè il nodo è definio in ermini di sé sesso Rappresenazione dello sack Per definire lo sack è sufficiene dare il riferimeno alla cima dello sack La cima sarà null nel caso di sack vuoo public class Sack { privae NodoSack cima; alri meodi 19 Cosruore e meodi Il meodo push() public Sack() { cima = null; public boolean empy() { reurn cima == null; Il meodo ha come paramero il riferimeno all oggeo che deve inserire alla cima dello sack Dovrà creare un nuovo nodo Copiare il riferimeno passao come paramero nel campo dao del nuovo nodo Inserire il nuovo nodo alla cima della lisa Il meodo pop() Classi inerne Il meodo non ha parameri. Deve eliminare il nodo alla cima dello sack Dovrà memorizzare il riferimeno conenuo nella cima Eliminare la cima Riporare all ambiene il riferimeno memorizzao La classe NodoSack viene usaa solo dalla classe Sack e quindi viene dichiaraa saic e privae È una risorsa privaa della classe Sack che avrà accesso perciò ai suoi campi Se la lisa è vuoa deve sollevare un eccezione Sack.java EmpySackExcepion lise, code 4
5 AA 03/04 Le code Negli sack l elemeno che si preleva è l ulimo che si è inserio (LIFO) Nelle code gli elemeni si inseriscono ad un esremo e prelevano all alro (FIFO) Quindi si preleva nell ordine in cui si è inserio Ad esempio: una lisa d aesa Implemenazione dinamica Si può usare una lisa concaenaa Uile avere anche un riferimeno all ulimo nodo della lisa Implemenazione in Java Operazioni sulla coda Rappresenazione del singolo nodo class NodoCoda { Objec dao; NodoCoda pros; Rappresenazione della coda public class Coda { privae NodoCoda, ulimo; privae saic NodoCoda { alri meodi 27 Inserire nodi Avviene alla fine della lisa Eliminare nodi Avviene all inizio della lisa 28 Cosruore e meodi Inserire nodi Il cosruore cosruisce una coda vuoa public Coda() { = ulimo = null; Funzione per inserire un nodo Cosruire il nuovo nodo da inserire Collegare il nuovo nodo dopo l ulimo Aggiornare il riferimeno all ulimo nodo public void aggiugi (Objec o) { Creare il nuovo nodo con il dao riferio da o NodoCoda = new NodoCoda();.dao = o;.pros = null; ulimo lise, code 5
6 AA 03/04 inserire nodi Collegare dopo l ulimo nodo ulimo.pros = ; inserire nodi Aggiornare il riferimeno all ulimo nodo ulimo = ; ulimo ulimo inserire nodi Eliminare nodi Ma se la coda era vuoa allora if ( == null) = ulimo = ; ulimo ulimo Conrollare se la coda è vuoa e nel caso sollevare l eccezione CodaVuoaExcepion if ( == null) hrow new CodaVuoaExcepion(); Eliminare il riferimeno al nodo e riporare all ambiene il riferimeno conenuo nel campo dao Objec risulao =.dao; =.pros; eliminare nodi Se la lisa rimane vuoa dopo il prelievo, occorre ricordarsi di aggiornare ulimo if ( == null) ulimo = null; Coda.java con l eccezioni CodaVuoaExcepion.java e il driver ProvaCoda.java 35 lise, code 6
Informatica 3. Informatica 3. LEZIONE 9: Introduzione ai linguaggi funzionali. Lezione 9 - Modulo 1. Paradigma funzionale. Linguaggi imperativi
Informaica 3 Informaica 3 LEZIONE 9: Inroduzione ai linguaggi funzionali Modulo 1: Inroduzione ai linguaggi funzionali Modulo 2: LISP Lezione 9 - Modulo 1 Inroduzione ai linguaggi funzionali Poliecnico
Dettaglitipi di dato astratti
tipi di dato astratti A. FERRARI ADT Un tipo di dato astratto o ADT (Abstract Data Type) è un tipo di dato le cui istanze possono essere manipolate con modalità che dipendono esclusivamente dalla semantica
DettagliEsercizi per il corso di Algoritmi
Esercizi per il corso di Algorimi Esercizi su Union-Find. Esercizio: Scrivere pseudocodice per Make-Se, Union, e Find-Se usando la rappresenazione araverso lise linkae e la eurisica di unione pesaa. Si
DettagliIndici con gli alberi. Indici su memorie secondarie. Organizzazione logica di un disco
Indici con gli alberi Alberi perfeamene bilanciai per indici su memorie di massa: B-alberi Indici su memorie secondarie Spesso i dai da ordinare sono in quanià ale da richiedere disposiivi di memoria secondaria,
DettagliAlgoritmi e Strutture Dati
Maria Rita Di Berardini, Emanuela Merelli 1 1 Dipartimento di Matematica e Informatica Università di Camerino A.A. 2006/07 Il concetto di dato Il concetto di tipo di dato Insertion Sort for j 2 to lenght[a]
DettagliAlgoritmi e Strutture Dati
Maria Rita Di Berardini 2, Emanuela Merelli 1 1 Dipartimento di Matematica e Informatica Università di Camerino 2 Polo di Scienze Università di Camerino ad Ascoli Piceno Il concetto di dato Il concetto
DettagliAlgoritmi e Strutture Dati
Strutture Elementari Maria Rita Di Berardini, Emanuela Merelli 1 1 Dipartimento di Matematica e Informatica Università di Camerino 29 ottobre 2008 Strutture Dati Astratte Il concetto di dato Il concetto
DettagliModelli per le macchine digitali
ei sequenziali Modelli per le macchine digiali Ingressi Uscie i( 0 ) i( n ) MACCHINA DIGITALE u( 0 ) u( n ) TEMPO In generale l uscia di una macchina in un cero isane emporale dipenderà dalla sequenza
DettagliAlgoritmi e Strutture di Dati
Algoritmi e Strutture di Dati Capitolo 4 - Strutture di dati elementari This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike License. To view a copy of this license, visit
Dettagli9 - Array. Programmazione e analisi di dati Modulo A: Programmazione in Java. Paolo Milazzo
9 - Array Programmazione e analisi di dati Modulo A: Programmazione in Java Paolo Milazzo Dipartimento di Informatica, Università di Pisa http://www.di.unipi.it/ milazzo milazzo di.unipi.it Corso di Laurea
DettagliListe. Costo operazioni Tutte le operazioni hanno costo O(1)
Liste Liste (List, Linked List) Una sequenza di nodi, contenenti dati arbitrari e 1-2 puntatori all'elemento successivo e/o precedente Contiguità nella lista contiguità nella memoria Costo operazioni Tutte
DettagliPiano di Lavoro e di Attività Didattica. Classe 3 Sezione. Docente/i. Lorenzo Porcelli. Stefano Punta. Anno scolastico 2013/ 2014.
Piano di Lavoro e di Aivià Didaica Anno scolasico 2013/ 2014 A Classe 3 Sezione A Indirizzo Informaica Maeria informaica Nome e cognome Lorenzo Porcelli Nome e cognome Sefano Puna Docene/i Firma Firma
DettagliLezione 1. Introduzione alle proprietà strutturali. F. Previdi - Controlli Automatici - Lez. 1 1
ezione. Inroduzione alle proprieà sruurali F. Previdi - Conrolli Auomaici - ez. F. Previdi - Conrolli Auomaici - ez. k x k y k u k x k x z G z z z z z z Qual è il «significao» di quesa cancellazione? Esempio:
DettagliPIL NOMINALE, PIL REALE E DEFLATORE
PIL NOMINALE, PIL REALE E DEFLATORE Il PIL nominale (o a prezzi correni) Come sappiamo il PIL è il valore di ui i beni e servizi finali prodoi in un cero periodo all inerno del paese. Se per calcolare
Dettagli10/10/2016. Caratteristiche degli array. Il tipo RECORD. Il record. LABORATORIO DI PROGRAMMAZIONE 2 Corso di laurea in matematica
Caratteristiche degli array Principali caratteristiche degli array: LABORATORIO DI PROGRAMMAZIONE 2 Corso di laurea in matematica Marco Lapegna Dipartimento di Matematica e Applicazioni Universita degli
DettagliEsercizi Strutture dati di tipo astratto
Salvatore Cuomo Esercizi Strutture dati di tipo astratto Lezione n. 20 Parole chiave: Strutture dati, pile code, liste Corso di Laurea: Informatica Insegnamento: Programmazione II, modulo di Laboratorio
DettagliSOMMARIO STACK. STACK: specifica STACK
SOMMARIO STACK Pila (stack): una struttura dati lineare a cui si può accedere soltanto mediante uno dei suoi capi per memorizzare e per estrarre dati. Specifica (descrizione). Implementazione (realizzazione).
DettagliEsercitazione 8. Corso di Tecniche di programmazione. Laurea in Ingegneria Informatica
Dipartimento di Informatica e Sistemistica Antonio Ruberti Sapienza Università di Roma Esercitazione 8 Corso di Tecniche di programmazione Laurea in Ingegneria Informatica (Canale di Ingegneria delle Reti
DettagliVediamo come si sviluppa la soluzione esplicita del problema. ( t)
Analisi ransioria L'analisi dinamica ransioria (dea anche analisi emporale) è una ecnica che consene di deerminare la risposa dinamica di una sruura soggea ad una generica ecciazione emporale Gli effei
DettagliIn questa lezione Strutture dati elementari: Pila Coda Loro uso nella costruzione di algoritmi.
In questa lezione Strutture dati elementari: Pila Coda Loro uso nella costruzione di algoritmi. 1 strutture dati (astratte) Una struttura dati astratti consiste di uno o più insiemi con delle operazioni
DettagliMemoria cache. Corso di Laurea in Ingegneria dell Informazione Università degli Studi di Firenze AA 2008/2009
Memoria cache Coo di Laurea in Ingegneria dell Informazione Univeià degli Sudi di Firenze AA 2008/2009 D S I Inroduzione Il problema delle presazioni dei calcolaori copre divei aspei, ma con l aumenare
DettagliLaboratorio di Programmazione
Laboratorio di Programmazione (Laurea triennale in matematica) Lezione 33 Le liste in C struct nodo { int info; struct nodo *next; }; typedef struct nodo Nodo; typedef Nodo *PNodo; Pila (Stack ) La struttura
DettagliCorso di Laurea Ingegneria Informatica Fondamenti di Informatica 2
Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 2 Dispensa 09 ADT: Lista, Pila, Coda A. Miola Marzo 2007 http://www.dia.uniroma3.it/~java/fondinf2/ ADT: Lista, Pila, Coda 1 Contenuti Tipo
DettagliAppunti di Analisi Numerica
Appuni di Analisi Numerica Giuseppe Profii oobre 2006 Disribuzione dei numeri finii Come viso negli esercizi della lezione precedene, c è un numero finio di manisse associae a diversi esponeni: ciascun
DettagliPiano di Lavoro e di Attività Didattica. Classe 4 Sezione. Docente/i. Lorenzo Porcelli. Stefano Punta. Anno scolastico 2013/ 2014.
iis.vola.alessandria.i segreeria@vola.alessandria.i Piano di Lavoro e di Aivià Didaica Anno scolasico 2013/ 2014 A Classe 4 Sezione A Indirizzo Informaica Maeria informaica Nome e cognome Lorenzo Porcelli
DettagliStabilità dell equilibrio (parte II)
Appuni di Teoria dei sisemi - Capiolo 5 Sabilià dell equilibrio (pare II) Cenni sui crieri di insabilià... Cenni sulla sabilià dell equilibrio nei sisemi discrei... 3 Crieri di sabilià del movimeno...
DettagliCOSTRUZIONE DELLE TAVOLE SELEZIONATE
COSTRUZIONE DELLE TAVOLE SELEZIONATE 1. Inroduzione Ai fini della deerminazione delle presazioni di un conrao assicuraivo sulla via umana, srumeno indispensabile sono le avole demografiche di moralià,
DettagliLaboratorio di Programmazione
Laboratorio di Programmazione (Laurea triennale in matematica) Lezione 25 Le liste in C struct nodo { int info; struct nodo *next; }; typedef struct nodo Nodo; typedef Nodo *PNodo; Inserimento in ordine
DettagliIntroduzione. Liste. Strutture ricorsive (2) Strutture ricorsive (1) DD p KP p
Introduzione Liste DD p. 449-474 KP p.397-424 Abbiamo fin ora studiato strutture dati con dimensione fissa: vettori e matrici strutture Introduciamo ora le strutture dati dinamiche (liste concatenate):
DettagliIntroduzione ai Modelli di Durata: Stime Non-Parametriche. a.a. 2009/ Quarto Periodo Prof. Filippo DOMMA
Inroduzione ai Modelli di Duraa: ime Non-Parameriche cenni a.a. 2009/2010 - Quaro Periodo Prof. Filippo DOMMA Corso di Laurea pecialisica/magisrale in Economia Applicaa Facolà di Economia UniCal F. DOMMA
DettagliListe concatenate. Collezione ordinata di nodi. Carlo Paolo Simona. Anna. ciascun nodo contiene due riferimenti:
Liste concatenate Collezione ordinata di nodi head tail next next next next element element element element Ø Anna Carlo Paolo Simona ciascun nodo contiene due riferimenti: - un riferimento "element" a
DettagliProgrammazione orientata agli oggetti. Ivan Lanese e Cosimo Laneve
Programmazione orientata agli oggetti Ivan Lanese e Cosimo Laneve Argomenti Programmazione orientata agli oggetti Classi Oggetti Costruttori Programmazione orientata agli oggetti È un paradigma di programmazione
DettagliLINKEDLIST: implementazione iteratore. LINKEDLIST: iteratore INNERITERATOR INNERITERATOR
LINKEDLIST: iteratore Il metodo iterator() restituisce un oggetto iteratore sulla lista per scandire gli elementi in sequenza a partire dall inizio della lista. public Iterator iterator() { return new
DettagliAniello Murano Altri problemi NP- Completi
Aniello Murano Alri problemi NP- Complei 6 Leione n Parole chiave: Np-complee Corso di Laurea: Informaica Codice: Email Docene: murano@ nainfni AA 2008-2009 Perché vedere alri problemi Np- complee? Per
DettagliLinked Lists. Liste linkate (1) liste linkate ( stack, queues ), trees. Liste linkate come strutture
Linked Lists Liste linkate () La combinazione di class/struct e puntatori porta alla creazioni di interessanti Abstract Data Type liste linkate ( stack, queues ), trees Liste linkate come strutture struct
DettagliLaboratorio di Programmazione
Laboratorio di Programmazione (Laurea triennale in matematica) Lezione 25 ADT (Abstract Data Types) tipo di dato astratto Un ADT è un modello matematico con una collezione di operatori definiti su tale
DettagliLa programmazione nel linguaggio C
Cancellazione : versione ricorsiva Sfruttiamo la visione ricorsiva della struttura dati per realizzare la cancellazione in modo ricorsivo 1. la cancellazione della vuota non richiede alcuna azione 2. la
DettagliQuesta soluzione va contemplata quando le lunghezze stimate dalle liste usate sono significativamente maggiori delle dimensioni di un elemento.
Un ulteriore semplificazione si ottiene utilizzando un elemento sentinella (dummy) che non contiene informazione, ma serve a segnalare la fine (e l inizio) di una lista. Questa soluzione va contemplata
DettagliEquazioni Differenziali (5)
Equazioni Differenziali (5) Daa un equazione differenziale lineare omogenea y n + a n 1 ()y n 1 + a 0 ()y = 0, (1) se i coefficieni a i non dipendono da, abbiamo viso che le soluzioni si possono deerminare
DettagliCorso di Laurea Ingegneria Informatica Fondamenti di Informatica 2
Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 2 Dispensa 04 Introduzione ai Tipi astratti di dato A. Miola Febbraio 2007 http://www.dia.uniroma3.it/~java/fondinf2/ Introduzione ADT 1
DettagliAlgoritmi e Programmazione Avanzata. Pile e code. Fulvio CORNO - Matteo SONZA REORDA Dip. Automatica e Informatica Politecnico di Torino
Fulvio CORNO - Matteo SONZA REORDA Dip. Automatica e Informatica Politecnico di Torino Sommario ADT Pile Code. A.A. 2001/2002 APA - 2 1 Sommario ADT Pile Code. A.A. 2001/2002 APA - 3 ADT Le regole che
DettagliOrario delle lezioni LABORATORIO TEORIA. mercoledì. martedì aula P/4. lab Turing. Strutture Dati
Orario delle lezioni LABORATORIO martedì 15.00-18.00 TEORIA mercoledì 16.00 18.00 lab Turing aula P/4 Libro di testo Data Structures & Algorithms in Java Michael T. Goodrich Roberto Tamassia John Wiley
DettagliPile e code. Sommario. Algoritmi e Programmazione Avanzata. Fulvio CORNO - Matteo SONZA REORDA Dip. Automatica e Informatica Politecnico di Torino
Pile e code Fulvio CORNO - Matteo SONZA REORDA Dip. Automatica e Informatica Politecnico di Torino Sommario ADT Pile Code. A.A. 2002/2003 APA - Pile e code 2 Politecnico di Torino Pagina 1 di 23 Sommario
DettagliLinked Lists. Liste linkate (1) Progettazione: struct. Liste linkate (2)
Liste linkate () Linked Lists La combinazione di class/struct e puntatori porta alla creazioni di interessanti Abstract Data Type liste linkate ( stack, queues ), trees Liste linkate come strutture struct
DettagliInformatica 3. LEZIONE 13: Liste doppie, pile e code. Modulo 1: Free list Modulo 2: Lista doppia Modulo 3: Pila Modulo 4: Coda
Informatica 3 LEZIONE 13: Liste doppie, pile e code Modulo 1: Free list Modulo 2: Lista doppia Modulo 3: Pila Modulo 4: Coda Informatica 3 Lezione 13 - Modulo 1 Free list Free list Le funzioni di sistema
DettagliTeoria dei Segnali. La Convoluzione (esercizi) parte prima
Teoria dei Segnali La Convoluzione (esercizi) pare prima 1 Si ricorda che la convoluzione ra due segnali x() e y(), reali o complessi, indicaa simbolicamene come: C xy () = x() * y() è daa indifferenemene
DettagliLaboratorio di Algoritmi e Strutture Dati. Code con Priorità
Laboratorio di Algoritmi e Strutture Dati Code con Priorità Teresa M.A. Basile basile@di.uniba.it Dipartimento di Informatica Università degli Studi di Bari Aldo Moro Materiale di base gentilmente concesso
DettagliInformatica 3. Informatica 3. LEZIONE 13: Liste doppie, pile e code. Lezione 13 - Modulo 1. Free list (2) Free list. Free list
LEZIONE 13: Liste doppie, pile e code Modulo 1: Free list Modulo 2: Lista doppia Modulo 3: Pila Modulo 4: Coda Lezione 13 - Modulo 1 Free list Politecnico di Milano - Prof. Sara Comai 1 Politecnico di
DettagliLezione n.12. Gerarchia di memoria
Lezione n.2 Gerarchia di memoria Sommario: Conceo di gerarchia Principio di localià Definizione di hi raio e miss raio La gerarchia di memoria Il sisema di memoria è molo criico per le presazioni del calcolaore.
DettagliAlberi. Strutture dati: Alberi. Alberi: Alcuni concetti. Alberi: definizione ricorsiva. Alberi: Una prima realizzazione. Alberi: prima Realizzazione
Alberi Strutture dati: Alberi Strutture gerarchiche di dati Esempi Il file system di un sistema operativo L organigramma di un azienda Alberi generali, alberi n-ari, alberi binari, Ogni nodo ha un unico
DettagliDiodi a giunzione p/n.
iodi a giunzione p/n. 1 iodi a giunzione p/n. anodo caodo Fig. 1 - Simbolo e versi posiivi convenzionali per i diodi. diodi sono disposiivi eleronici a 2 erminali caraerizzai dalla proprieà di poer condurre
DettagliAlgoritmi 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
DettagliProgrammazione orientata agli oggetti. Ivan Lanese
Programmazione orientata agli oggetti Ivan Lanese Argomenti Programmazione orientata agli oggetti Classi Oggetti Costruttori Scrivere grosse applicazioni La gran parte delle applicazioni sono GROSSE Windows
Dettagli18 - Vettori. Programmazione e analisi di dati Modulo A: Programmazione in Java. Paolo Milazzo
18 - Vettori Programmazione e analisi di dati Modulo A: Programmazione in Java Paolo Milazzo Dipartimento di Informatica, Università di Pisa http://pages.di.unipi.it/milazzo milazzo di.unipi.it Corso di
DettagliStrutture dati dinamiche
Strutture dati dinamiche - Liste concatenate - Pile -> LIFO (last in first out) - Code -> FIFO (first in first out) - Alberi binari: gestione dati in algoritmi complessi Liste Concatenate Formata da elementi
DettagliIngressi Uscite I S I S T E M A U
PREMESSA n quesa lezione analizziamo l archieura dei sisemi di conrollo auomaico che permeono di enere soo conrollo le condizioni di un processo produivo al fine di oimizzare la qualià del prodoo. CONCETT
DettagliUniversità degli Studi di Firenze Corso di Laurea triennale in Fisica e Astrofisica
Universià degli Sudi di Firenze Corso di Laurea riennale in Fisica e Asrofisica Analisi Maemaica I (A.A. 5/6) Proff. F. Bucci & E. Paolini Seconda prova inercorso ( Dicembre 5). Dimosrare che per ogni
DettagliInserimento di un elemento in coda. quale va collegato quello nuovo. ultimo. *lista 8 3. aux. ultimo. *lista 8 3. aux
Inserimento di un elemento in coda Se la è vuota coincide con l inserimento in testa = è necessario il passaggio per indirizzo! Se la non è vuota, bisogna scandirla fino in fondo = dobbiamo usare un puntatore
DettagliHeap e code di priorità
Heap e code di priorità Violetta Lonati Università degli studi di Milano Dipartimento di Scienze dell Informazione Laboratorio di algoritmi e strutture dati Corso di laurea in Informatica AA 2009/2010
DettagliADT: Abstract Data Type. Quasi ADT. ADT per collezioni di dati (code generalizzate) 04 I tipi di dati astratti (I parte)
ADT: Abstract Data Type I tipi di dati astratti (I parte) Gianpiero Cabodi e Paolo Camurati Dip. Automatica e Informatica Politecnico di Torino Scopo Livello di astrazione sui dati tale da mascherare completamente
DettagliFondamenti di Informatica
Strutture dati complesse Esempi di strutture dati complesse analizzate in questa lezione: Fondamenti di Informatica 21. Strutture di dati complesse in C++ Array di puntatori Pila (Stack) Coda (queue) Liste
DettagliCorso di Misure Geodeiche Esercizio posizionameno relaivo Versione:. Jun. 00 Creao da Marco Scurai. remessa. La presene eserciazione risolve in modo compleo e deagliao un problema di sima della posizione
DettagliControlli automatici
Conrolli auomaici (Prof. Bascea) Prima appello Anno accademico 29/21 15 Febbraio 21 Cognome:... Nome:... Maricola:... Firma:... Avverenze: Il presene fascicolo si compone di 8 pagine (compresa la coperina).
Dettagli1 Strutture di dati dinamiche. 2 Vector come esempio di array dinamico
1 Strutture di dati dinamiche Le strutture dinamiche servono per memorizzare i dati dei quali non si sa a priori la loro dimensione. Ad esempio non sappiamo a priori quanti contatti avremo nella nostra
DettagliState Space Model. Corso di: Analisi delle Serie Storiche. Corso di Laurea Triennale in: Scienze Statistiche A.A. 2017/18
Sae Space Model Corso di: Analisi delle Serie Soriche Corso di Laurea Triennale in: Scienze Saisiche A.A. 07/8 Generalià Gli Sae Space Models (Modelli nello Spazio degli Sai) forniscono una meodologia
DettagliPile e code. ADT e strutture dati per la rappresentazione di sequenze ad accesso LIFO e FIFO
Pile e code ADT e strutture dati per la rappresentazione di sequenze ad accesso LIFO e FIFO Le Pile Una pila è una struttura dati lineare, alla quale gli elementi possono essere aggiunti o sottratti da
DettagliAlgoritmi 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
DettagliStrutture dati. Il che cosa e il come. F. Damiani - Alg. & Lab. 04/05
Strutture dati Il che cosa e il come Il che cosa ed il come Struttura dati: descrive come sono organizzati i dati e come sono realizzate le operazioni su di essi (cioe come si accede ai dati) Specifica
DettagliLezione 4 Material Requirement Planning
Lezione 4 Maerial Requiremen Planning Obieivo: noi gli alberi di prodoo per ciascun ipo; daa una sringa di loi di prodoi finii (fabbisogni dei clieni), ciascun loo da complearsi enro un dao inervallo (se.)
DettagliAlgoritmi di Ricerca. Esempi di programmi Java. Prof. Angela Bonifati
Passaggio dei parametri in Java Nel seguente esempio public class parametri2 public static void main(string args[]) int x = 1; int y; double d[] = new double[2]; d[0] = 25; y= metodo1(d, x); System.out.println("Il
Dettaglitipi di dato astratti
tipi di dato astratti liste pile code alberi grafi Alberto Ferrari Informatica ADT o un tipo di dato astratto o ADT (Abstract Data Type) è un tipo di dato le cui istanze possono essere manipolate con modalità
DettagliTipi astratti pila e coda
Tipi astratti pila e coda Una pila è un tipo astratto che consente di rappresentare un insieme di elementi in cui ogni eliminazione ha per oggetto l elemento che è stato inserito per ultimo. Questa disciplina
DettagliCORSO DI PROGRAMMAZIONE
ISTITUTO TECNICO INDUSTRIALE G. M. ANGIOY SASSARI CORSO DI PROGRAMMAZIONE PILE E CODE DI DATI DISPENSA 11.02 11-02_Pile_Code_[ver_15] Questa dispensa è rilasciata sotto la licenza Creative Common CC BY-NC-SA.
DettagliStrutture dati e loro organizzazione. Gabriella Trucco
Strutture dati e loro organizzazione Gabriella Trucco Introduzione I linguaggi di programmazione di alto livello consentono di far riferimento a posizioni nella memoria principale tramite nomi descrittivi
DettagliLezione 15 programmazione in Java. Nicola Drago Dipartimento di Informatica Università di Verona
Lezione 15 programmazione in Java Nicola Drago nicola.drago@univr.it Dipartimento di Informatica Università di Verona Anteprima Approfondimenti della programmazione OO Il modificatore abstract Le classi
Dettaglidel segnale elettrico trifase
del segnale elerico rifase Gli analizzaori di poenza e di energia Qualisar+ consenono di visualizzare isananeamene le caraerisiche di una ree elerica rifase. emporale I Qualisar+ visualizzano simulaneamene
DettagliGeometria analitica del piano pag 7 Adolfo Scimone. Rette in posizioni particolari rispetto al sistema di riferimento
Geomeria analiica del piano pag 7 Adolfo Scimone Ree in posizioni paricolari rispeo al sisema di riferimeno L'equazione affine di una rea a + + c = 0 può assumere forme paricolari in relazione alla posizione
DettagliLa struttura a termine dei tassi d interesse. Benedetto Matarazzo
La sruura a ermine dei assi d ineresse Benedeo Maarazzo Corso di Maemaica Finanziaria Sruura per scadenza dei assi di ineresse Generalià sul mercao dei capiali La sruura per scadenza dei assi d ineresse
DettagliTipi di dato e Strutture dati elementari
Tipi di dato e Strutture dati elementari Ing. Paolo Craca Anno accademico 2007/2008 Tipi di dato e Strutture dati elementari 1 / 40 Cosa vedremo in questo seminario 1 Introduzione 2 Pile 3 Code 4 5 Bibliografia
DettagliFondamenti di Informatica T-1
Fondamenti di Informatica T-1 Metodi statici e array Tutor: Angelo Feraudo angelo.feraudo2@unibo.it a.a. 2017/2018 Fondamenti di Informatica T-1 Angelo Feraudo 1 / 14 METODI STATICI: Definizione Un metodo
DettagliSESSIONE SUPPLETIVA PROBLEMA 2
www.maefilia.i SESSIONE SUPPLETIVA - 26 PROBLEMA 2 Fissao k R, la funzione g k :R R è così definia: g k = e kx2. Si indica con Γ k il suo grafico, in un riferimeno caresiano Oxy. ) Descrivi, a seconda
Dettagli5 Soluzioni numeriche di equazioni differenziali
5 Soluzioni numeriche di equazioni differenziali 5. Meodo di Eulero per la soluzione approssimaa di equazioni differenziali del primo ordine in forma normale Dao un problema di Cauch { = f (,) ( ) =, il
DettagliLa risposta di un sistema lineare viscoso a un grado di libertà sollecitato da carichi impulsivi. Prof. Adolfo Santini - Dinamica delle Strutture 1
La risposa di un sisema lineare viscoso a un grado di liberà solleciao da carichi impulsivi Prof. Adolfo Sanini - Dinamica delle Sruure 1 Inroduzione 1/2 Un carico p() si definisce impulsivo quando agisce
DettagliCircuiti dinamici. Circuiti del primo ordine. (versione del ) Circuiti del primo ordine
ircuii dinamici ircuii del primo ordine www.die.ing.unibo.i/pers/masri/didaica.hm (versione del 4-5- ircuii del primo ordine ircuii del primo ordine: circuii il cui sao è definio da una sola variabile
DettagliCalcolo numerico e ODE. Integrazione Numerica. Calcolo numerico Integrazione numerica Derivazione numerica. Equazioni differenziali.
Calcolo numerico e ODE Inegrazione Numerica Calcolo numerico Inegrazione numerica Derivazione numerica Equazioni differenziali Meodo dei reangoli Con alezza relaiva al puno medio Implemenazione: funcion
DettagliRICERCA OPERATIVA GRUPPO A prova scritta del 21 giugno 2010
RICERCA OPERATIVA GRUPPO A prova scria del giugno 00. Scrivere il duale del problema P: max / x x x min y + y / x x = / y + y > / x + x / x > y = x, x > 0 y + / y > e dire se P ammee soluzione oima. In
DettagliAlgoritmi e Strutture Dati
Algoritmi e Strutture Dati Strutture dati elementari Alberto Montresor Università di Trento This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike License. To view a copy
DettagliFondamenti di informatica T-1 (A K) Esercitazione 2 Basi del linguaggio Java
Fondamenti di informatica T-1 (A K) Esercitazione 2 Basi del linguaggio Java AA 2018/2019 Tutor Lorenzo Rosa lorenzo.rosa@unibo.it 2 Programma Introduzione al calcolatore e Java Linguaggio Java, basi e
DettagliP8 CIRCUITI SEQUENZIALI ELEMENTARI
P8 CICUITI EUENZIALI ELEMENTAI P8. - Tracciare lo schema a blocchi di un sisema sequenziale secondo il modello di Moore. Nel modello di Moore di un sisema sequenziale, si suppone che lo sao successivo
DettagliLE STRUTTURE DATI DINAMICHE: GLI ALBERI. Cosimo Laneve
LE STRUTTURE DATI DINAMICHE: GLI ALBERI Cosimo Laneve 1 argomenti 1. definizione di alberi e nozioni relative 2. implementazione degli alberi, creazione, visita 3. algoritmo di visita iterativa e sua implementazione
DettagliSISTEMI LINEARI TEMPO INVARIANTI. Fondamenti Segnali e Trasmissione
SISTEMI LINEARI TEMPO INVARIANTI Fondameni Segnali e Trasmissione Definizione di sisema Sisema: Da un puno di visa fisico e un disposiivo ce modifica un segnale (), deo ingresso, generando il segnale y(),
Dettagli2. Grafi e proprietà topologiche
. Grafi e proprieà opologiche Grafo. Marice di incidenza complea. Soografo. Ordine di un nodo. Percorso, maglia, veore opologico di maglia. Taglio, veore opologico di aglio. Orogonalià ra agli e maglie.
DettagliCorso di Componenti e Impianti Termotecnici TERMOSTRISCE
TERMOSTRISCE 1 Termo srisce Le ermosrisce sono corpi scaldani che cedono calore per convezione naurale e per irraggiameno. Sono cosiuie essenzialmene da griglie di ubi sulle quali vengono fissae delle
DettagliSommario. I Uso degli oggetti 39
Questo è l'indice del libro, in cui sono evidenziati i paragrafi corrispondenti agli argomenti trattati nel corso e che costituiranno il programma d'esame. Alcuni argomenti sono stati trattati nelle lezioni
DettagliMinimi Quadrati Ricorsivi
Minimi Quadrai Ricorsivi Minimi Quadrai Ricorsivi Fino ad ora abbiamo sudiao due diversi meodi per l idenificazione dei modelli: - Minimi quadrai, uilizzao per l idenificazione dei modelli ARX, in cui
DettagliTeoria dei Segnali. La Convoluzione (esercizi) parte seconda
Teoria dei Segnali La Convoluzione (esercizi) pare seconda 1 Esercizio n.8 Calcolare la convoluzione ra i due segnali : e x() = rec ( ) rec ( 2 ) y() = rec 2 ( ) Conviene inizialmene disegnare i due segnali
DettagliMODELLISTICA E SIMULAZIONE cred.: 5 7,5 Recupero 1 prova: 25 luglio 2005
Poliecnico di Milano I a Facolà di Ingegneria C.S. in Ing. per l Ambiene e il Terriorio MODELLISTICA E SIMULAZIONE cred.: 5 7,5 Recupero prova: 5 luglio 005 COGNOME NOME FIRMA: [7,5 credii] Voo: ATTENZIONE!
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
Dettagli