16.10.20021 Ordinare F. Bombi 16.10.2002. 2 Liste ordinate Una lista di n oggetti confrontabili (a 0, a 1, a 2, … a n-1 ) si dice ordinata quando a i.

Slides:



Advertisements
Presentazioni simili
Smetteranno di ridere fra pochi secondi ...
Advertisements

Centro Nazionale Trapianti *Dati Provvisori al 28/01/2004 FONTE DATI: Dati Provvisori Reports CIR Attività donazione e trapianto 31 dicembre 2003*
L’Insieme Unione.
Operazioni con gli insiemi Progetto Docente I Edizione Lavoro finale Ipotetica lezione di Matematica Corsista: Marina La Grotta.
CORSO PROGETTO DOCENTE
1 Casi di studio ISO 9660 FAT-12, FAT-16, FAT-32 NTFS.
LA TEORIA DEGLI INSIEMI
SIT – Sistema Informativo Trapianti. PMP Donatori effettivi Attività di donazione * * Dati preliminari al 30 Aprile 2010.
SIT – Sistema Informativo Trapianti Attivitàdonazione al 30 giugno 2008 al 30 giugno 2008 FONTE DATI: Dati Definitivi Reports CIR *Dati preliminari al.
Centro Nazionale Trapianti Attività Donazione e Trapianto Report 2004 FONTE DATI: Dati Definitivi Reports CIR.
SIT – Sistema Informativo Trapianti. PMP Donatori effettivi Attività di donazione * * Dati preliminari al 30 Giugno 2010.
SIT – Sistema Informativo Trapianti Report 2008 Attivita di donazione e trapianto Attivita di donazione e trapianto.
SIT – Sistema Informativo Trapianti Programma Nazionale Pediatrico RENE Al 31 Dicembre 2011.
SIT – Sistema Informativo Trapianti Programma Nazionale Pediatrico FEGATO Al 31 Dicembre 2011.
SIT – Sistema Informativo Trapianti. PMP Donatori effettivi Attività di donazione * * Dati preliminari al 31 Marzo 2010.
SIT – Sistema Informativo Trapianti Programma Nazionale Pediatrico CUORE Al 31 Dicembre 2011.
*Anno 2002: proiezione dati 1 sem 2002 Donatori, prelievi e trapianti di cornea - Numero * 2002 *
Relazione tra due insiemi:
"3 Ellissi: Elementari" Montecatini Sperimentazione della riforma Formazione docenti informatica Ipotesi di articolazione del percorso.
Quando diciamo che due colori sono diversi? Laboratorio didattico informatico Lezione marzo 212 Alberto Stefanel.
COESIS RESEARCH Srl - Via Milano, Cologno Monzese (MI) - Tel.: 02/ FAX: 02/ P.IVA PSICOLOGIA E SICUREZZA.
Valutazione dell’efficacia del provvedimento
Ascensoristi Adeguamento sicurezza ascensori pre direttiva 95/16/CE Situazione in Europa Come rispondere ai requisiti indicati dal Decreto Ministeriale.
18 e 19 dicembre 2002Riunione di Gruppo 1 INFN di Napoli AGENDA della Riunione di fine anno del Gruppo I INFN di Napoli 18 e 19 dicembre 2002.
La congiuntura. Quadro dellandamento dei saldi del fatturato nei settori economici (2002 – 2003) Fonte: Osservatorio Economico Pistoia La congiuntura.
Le carriere universitarie degli studenti in matematica
La termodinamica Nello studio della meccanica abbiamo lasciato alcuni problemi aperti L’energia meccanica totale in presenza di forze non conservative,
La termodinamica Nello studio della meccanica abbiamo lasciato alcuni problemi aperti L’energia meccanica totale in presenza di forze non conservative,
Evoluzione Indice SBN Interfaccia Diretta SBN Utilizzo del protocollo SBN-MARC Roma 13 Settembre 2002 Lino Pasqualetti.
Dio è solito usare la solitudine per insegnarci qualcosa sulla convivenza.
Unintroduzione a HTML (II). 4-2 Includere figure con i tag immagine Le immagini possono essere usate come link utilizzando i tag àncora Formato del tag.
Presentazione 7 Il carrello di pronto intervento per le reazioni allergiche a rapida insorgenza: materiali e farmaci.
Seminario Swarm Seminario su Swarm Pietro Terna web.econ.unito.it/terna.
Seminario Swarm Seminario su Swarm Pietro Terna web.econ.unito.it/terna.
SIT – Sistema Informativo Trapianti Liste di attesa al 31 Agosto 2008* al 31 Agosto 2008* FONTE DATI: Dati Sistema Informativo Trapianti *Dati SIT 9 Ottobre.
I Circoli Didattici (Scuola Primaria) nel territorio di Quartu S.Elena A SCUOLA DI CITTADINANZA Quartu S.Elena - 29 Novembre 2006 Relatore Anna Maria Sanna.
1 Algoritmo di Ford-Fulkerson s t G: Valore del flusso = 0 0 flusso capacità
QUESTO NATALE dona un po’ di te
IO E IL MOTORINO ITIS A. EINSTEIN - ROMA
Attività di Donazione al 30 Settembre 2013.
Le proporzioni.
Malattia di Kawasaki nella Pediatria di Parma
24 febbraio 2003 Percorso A - Formazione docenti T.I.C. - c.m 55/20021 Piano nazionale di formazione dei docenti sulle T.I.C. 293°Circolo Palestrina II.
SCHEDA DIDATTICA DOMANDA STIMOLO: L’attività parte da una particolare domanda, frutto delle osservazioni fatte dagli studenti durante gli incontri precedenti.
Comuni con oltre abitanti
30 ottobre Mergesort F. Bombi 30 ottobre 2002.
RETE NAZIONALE TRAPIANTI Attività di prelievo e trapianto di organi:
Algoritmi e strutture dati
Liste di attesa al 31 agosto 2006* al 31 agosto 2006* FONTE DATI: Dati Sistema Informativo Trapianti *Dati SIT 19 settembre 2006.
HTML per iniziare Gianpaolo Cecere. 29 aprile Sintassi HTML I tag HTML sono direttive per i browser I tag sono contenitori per porzioni di documento.
Servizi socio-sanitari e sociali autorizzati e accreditati ULSS 3 L. R
Addizione e sottrazione
SIT – Sistema Informativo Trapianti. * Dati preliminari al 31 Ottobre 2012 PMP Decessi con accertamento neurologico Attività di donazione 2000 – 2012*
SIT – Sistema Informativo Trapianti. PMP Decessi con accertamento neurologico Attività di donazione 2000 – 2012* FONTE DATI: Dati Reports * Dati preliminari.
SIT – Sistema Informativo Trapianti. PMP Donatori effettivi Attività di donazione * * Dati preliminari al 28 Febbraio 2010.
SIT – Sistema Informativo Trapianti. PMP Decessi con accertamento neurologico Attività di donazione 2000 – 2011* FONTE DATI: Dati Reports * Dati definitivi.
EURO, puoi comprarti una casa, EURO, puoi comprarti una casa, ma non una famiglia; ma non una famiglia; puoi comprarti un letto, puoi comprarti un letto,
La frazione come operatore
Nooooo... No.. NO! un altro LUNEDI’!!!!!.
MP Vediamo di riassumere in maniera sintetica gli avvenimenti più importanti che hanno lasciato una traccia indelebile durante il 2002.
Victor Martinez, Responsabile campagna «Tirocinio in sicurezza» / pagina 1 Presentazione Campagna «Tirocinio in sicurezza»
28 ottobre Mergesort F. Bombi 28 ottobre 2003.
PRESENTAZIONE LISTA 1° QUALUNQUE COSA SI DICA IN GIRO, PAROLE E IDEE POSSONO CAMBIARE IL MONDO.
Pippo.
08/04/2017 TEORIA DEGLI INSIEMI In inglese set theory.
Master Bioinformatica 2002: Grafi
EVOLUZIONE DELL’INDICE SBN MUSICA Roma 16 ottobre 2002 Relatore: Gisella De Caro Istituto centrale per il catalogo unico delle biblioteche italiane e per.
© 2002 By Default! A Free sample background from Slide 1 Proviamo a fare un gioco Proviamo a fare un gioco.
1 novembre I nomi in Java F. Bombi 1 novembre 2002.
Definizione di algoritmo: Un algoritmo è un procedimento che risolve un determinato problema attraverso un numero finito di passi. Un problema risolvibile.
Transcript della presentazione:

Ordinare F. Bombi

2 Liste ordinate Una lista di n oggetti confrontabili (a 0, a 1, a 2, … a n-1 ) si dice ordinata quando a i <= a i+1 per ogni i=0,… n-2 Per ordinare una lista si deve costruire una nuova lista permutando gli elementi in modo che sia soddisfatta la condizione indicata

Ordinare un array Considereremo inizialmente algoritmi che operano su dati contenuti in un array di n elementi oppure sui prima n elementi di un array di dimensioni maggiori L’algoritmo più semplice che si può proporre consiste nell’esaminare successivamente le n-1 coppie di elementi contigui e scambiarli quando il primo non sia inferiore o uguale al secondo L’intero processo deve essere ripetuto n-1 volte oppure sino a quando non è più necessario effettuare scambi Si può osservare che dopo la prima serie di scambi l’elemento più grande presente nell’array sarà con certezza all’ultimo posto, ad ogni successiva passata si può diminuire di 1 il numero di confronti

Analisi di bubblesort L’algoritmo appena descritto viene indicato come ordinamento per galleggiamento o bubblesort. Il numero di confronti necessari per ordinare un array di n elementi è pari a: (n-1)+(n-2)+…+2+1 =  i=1,n-1 i= n(n-1)/2 Nel caso peggiore (quando si parte di un array ordinato in senso inverso) ad ogni confronto corrisponde uno scambio, questo rende l’algoritmo inutilmente inefficiente

Ordinamento per selezione Supponiamo di saper estrarre da un vettore l’elemento più piccolo presente (o il primo degli elementi più piccoli presenti) Possiamo utilizzare la selezione del minimo per realizzare un algoritmo di ordinamento pensando di utilizzare due vettori, il primo contiene i dati disordinati, nel secondo costruiamo la permutazione ordinata – Fino a che il primo vettore non è vuoto Selezionare il minimo Togliere il minimo dal primo vettore Inserire il minimo nel secondo vettore

Selezione 0 n Dati disordinati Vettore ordinato

Selezione sul posto In pratica non è necessario utilizzare due vettori. Al passo i-esimo si assume che il vettore sia diviso in due parti: una ordinata e l’altra disordinata; si assume inoltre che gli elementi nella parte ordinata siano minori o uguali degli elementi nella parte disordinata. La parte ordinata comprende i elementi, i restanti n-i elementi sono nella parte del vettore da ordinare Al passo i-esimo si seleziona l’elemento più piccolo nella parte disordinata dell’array e lo si inserisce alla fine della parte disordinata L’algoritmo termina quando i = n-1 All’inizio si avrà i = 0 in quanto la parte ordinata non contiene nessun elemento

Selezione sul posto 0 n-1 ordinatodisordinato v[k] <= v[j] i

Analisi di selezione int i = 0;1 while (i < (n-1))n { int piccolo = i;n-1 int j = i+1n-1 while(j < n)n-1, n-2,… 1 { if (v[j] < v[piccolo])n-2, n-3,… 0 piccolo = j; 0  x j++;n-2, n-3,… 0 } int temp = v[piccolo];n-1 v[piccolo] = v[i];n-1 v[i] = temp;n-1 i++n-1 }

Analisi di selezione Assumiamo che ogni istruzione venga eseguita in un tempo costante (indipendente da n). Abbiamo allora che, nel caso peggiore: t(n) = a + bn + c(n-1) + d  i=1,n-1 i + e  i=0,n-2 i = a+bn + c(n-1) + dn(n-1)/2 + e(n-1)(n-2)/2 = k 1 n 2 + k 2 n + k 3 Dove a, b, c, d, e sono costanti e K 1, k 2, k 3 sono costanti combinazione delle precedenti

Analisi di selezione Per ordinare n elementi – Si devono effettuare n-1 cicli, ogni ciclo comprende un confronto e uno scambio – Si devono effettuare n(n-1)/2 confronti – La sola istruzione piccolo = j; Viene eseguita un numero di volte dipendente dall’ordinamento iniziale dei dati Il tempo di esecuzione dipende asintoticamente da n 2 fatto che porta a dire che l’algoritmo ha una complessità temporale O(n 2 )

Notazione O-grande Siano f(n) e g(n) funzioni che mappano gli interi non negativi in numeri reali. Si dice che f(n) è O(g(n)) se esistono una costante reale c e un numero intero n 0  1 tali per cui sia f(n)  cg(n) per ogni intero n  n 0. Quando f(n) è O(g(n)) spesso si scrive impropriamente f(n) = O(g(n)) espressione che va letta “ f(n) è O-grande di g(n) ”

Un esempio n f(n) cg(n) n0n0 g(n) f(n) = O(g(n)) f(n) = a + bn g(n) = n