Algoritmi e Strutture Dati

Slides:



Advertisements
Presentazioni simili
Algoritmi e Strutture Dati
Advertisements

Tecniche e Linguaggi di Programmazione
Ingegneria del Software (e basta)
Linguaggi di Programmazione e compilatori
18/10/2004Programmazione e Laboratorio di Programmazione – Luca Tesei1 Programmazione e Laboratorio 2004/05 Informazioni Introduttive.
Informazioni sul Corso
1 Metodologie di Programmazione. 2 Contenuto generale §tecniche per la programmazione orientata ad oggetti (in piccolo) §esemplificate utilizzando il.
Corso di Laurea in Ingegneria Informatica e dellAutomazione Corso di Ingegneria del software I A. A M. MongielloIntroduzione al corso1 1.Introduzione.
Metodi e tecniche di analisi dei dati con Laboratorio (4+4 crediti) Specialistica in Psicologia dei Processi Cognitivi (A31) I anno Prof.ssa Francesca.
Algoritmi e Strutture Dati con Laboratorio (Modulo I)
Elementi di Algoritmi e Strutture Dati
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Algoritmi e basi del C Marco D. Santambrogio – Ver. aggiornata al 8 Marzo 2013.
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Lab 2: 25 Marzo 2013 Marco D. Santambrogio – Gianluca Durelli -
Informatica A (informatica grafica) Allievi di Ingegneria Civile, L-Z
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Ulitma lezione… fine corso IEIM 2013 Marco D. Santambrogio – Ver. aggiornata al.
Statistica per le decisioni aziendali ed analisi dei costi
Note organizzative per il corso di Laboratorio di tecniche computazionali Annarita Margiotta.
1 Corso di Laurea in Biotecnologie Informatica (Programmazione) Problemi e algoritmi Anno Accademico 2009/2010.
Sociologia dei Processi Culturali
Algoritmi e Strutture Dati
Algoritmi e Strutture Dati
Algoritmi e Strutture Dati
Algoritmi e Strutture Dati
1 © Alberto Montresor Algoritmi e Strutture Dati Capitolo 7 - Tabelle hash Alberto Montresor Università di Trento This work is licensed under the Creative.
Algoritmi e Strutture Dati
Algoritmi e Strutture Dati
Algoritmi e Strutture Dati
Algoritmi e Strutture Dati
Algoritmi e Strutture Dati
Algoritmi e Strutture Dati
Algoritmi e Strutture Dati
Lezione 0 22 FEBBRAIO Destinatari del corso Studenti di terzo anno : lingue e culture per il turismo e il commercio internazionale curr CINT Prosecuzione.
Tecniche Avanzate di Progettazione Software aa 2002/2003 Docente Maura Cerioli Studio 331 (terzo piano lato monte) Tel
Obiettivi del corso Programmazione Corso di laurea in Informatica.
Corso di: “Management degli Eventi” a.a. 2009/10
Laboratorio di Calcolo I 1) Introduzione Università Roma Tre Corso di Studi in Fisica AA 2002/03.
Seconda Università degli studi di Napoli Facoltà di Architettura Corsi di Laurea in Design e Comunicazione – 3°anno CORSO DI MARKETING Codice A0275 Prof.
Intelligenza Artificiale
Corso di Fondamenti di Informatica A Andrea Omicini Anno accademico 1999/2000 Università degli Studi di Bologna Facoltà di Ingegneria Corsi di Laurea in.
Sociologia del Terzo Settore
Algoritmi e Strutture Dati 8 crediti Calendario: 1 Ott. – 6 Dic. Aula: LuM250 Orario: Lun, Mar, Mer, Gio Giorni di lezione disponibili 40 ~48.
Giovanni Pascuzzi per Ordine Avvocati Trento
RICERCA DI MERCATO PER NON ADDETTI
Università del Salento Facoltà di Ingegneria Corso di Basi di dati I a.a
Università del Salento Facoltà di Ingegneria Corso di Basi di dati I a.a
Facoltà di Ingegneria Fondamenti di Informatica a.a
Riconfigurare il diritto dautore. Lipertesto, una necessità di riconfigurazione. Secondo G. P. Landow, lavvento dellipertesto implica la necessità di.
Lanalisi di settore a cura di Bonucchi & Associati srl Questo documento è di supporto a una presentazione verbale. I contenuti potrebbero non essere correttamente.
Algoritmi e Strutture dati a.a. 2013/2014 Informazioni sul corso
Algoritmi e Strutture dati a.a. 2012/2013 Informazioni sul corso Dr Maria Federico.
Fondamenti di Programmazione
Corso di Fisica Generale II (L-Z) 1mo modulo ing. Civile - ambientale
Tecnologie di InternetFondamenti di Linguaggi di Markup Dott. Nicola Dragoni Introduzione a e ai (Fondamenti di Markup Languages)
Università degli Studi dell’Aquila
lun mar mer gio ven SAB DOM FEBBRAIO.
Esempi di posizionamento prodotti
Ugo de'Liguoro - Informatica 2 - Introduzione Informatica 2 Introduzione al corso a.a. 2003/04.
Algoritmi e Strutture Dati
Algoritmi e Strutture Dati Laurea in Informatica Calendario: 2 Marzo – 12 Giugno Aula: LuM250 Orario: Mer, Gio, Ven Numero crediti = 8 (~ 64.
Prof. Romano Boni Assistente Silvia Torrani ECONOMIA AZIENDALE AA Note Organizzative.
DIRITTO SINDACALE E DEL LAVORO
DIRITTO SINDACALE E DEL LAVORO Presentazione del corso
Algoritmi e Strutture Dati Introduzione agli algoritmi
1 Metodologie di Programmazione §tecniche per la programmazione orientata ad oggetti §esemplificate utilizzando il linguaggio Java §testo di riferimento.
Psicometria A – I semestre
Notizie utili sul corso di Economia politica
Corso di Laurea in Scienze dell’Educazione Docimologia
Transcript della presentazione:

Algoritmi e Strutture Dati Introduzione al corso Alberto Montresor Università di Trento This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/2.5/ or send a letter to Creative Commons, 543 Howard Street, 5th Floor, San Francisco, California, 94105, USA. 1 © Alberto Montresor

Cos’è un informatico? 2 Slide (c) Jeff Edmonds, jeff@cs.yorku.ca © Alberto Montresor

L’azienda vi assegna un compito... Input: Un vettore di interi X[1...n] Output Il sottovettore X[i … j] la cui somma degli elementi è massima fra tutti i sottovettori 3 © Alberto Montresor

Um? Mi dica che programma devo scrivere! La vostra risposta... Um? Mi dica che programma devo scrivere! All'università ho imparato questo magnifico algoritmo! Posso sviluppare un nuovo algoritmo per lei! Slide (c) Jeff Edmonds, jeff@cs.yorku.ca 4 © Alberto Montresor

L’azienda vi assegna un compito... Input: Un vettore di interi X[1...n] Output Il sottovettore X[i … j] la cui somma degli elementi è massima fra tutti i sottovettori Domande Il problema è specificato a sufficenza? Riuscite a risolverlo? Riuscite a risolverlo in maniera efficiente? 5 © Alberto Montresor

Versione 1 - O(n3) 6 © Alberto Montresor

Versione 2 - O(n2) 7 © Alberto Montresor

Versione 3 - O(n log n) 8 © Alberto Montresor

Versione 4 - O(n) 9 © Alberto Montresor

Fornire due elementi fondamentali: Scopo del corso Fornire due elementi fondamentali: Contenuto: una panoramica aggiornata sui problemi fondamentali e le loro soluzioni Metodo: i principi e le tecniche per risolvere i problemi insoliti che capitano nella vita di tutti i giorni Contenuto: lista di algoritmi Studiate il loro codice Non a memoria! Convincetevi che funzionano Provate a implementarli Metodo: pensiero astratto Come sviluppare nuovi algoritmi per ogni problema che si presenta 10 © Alberto Montresor

Lo studio degli algoritmi non è uno sport in cui si guarda e basta... Un consiglio Lo studio degli algoritmi non è uno sport in cui si guarda e basta... E' necessario Scrivere molti algoritmi Analizzare la loro correttezza Analizzare la loro efficienza 11 © Alberto Montresor

Il corso è dotato di un sito web: http://disi.unitn.it/~montreso/asd/ Sito web del corso Il corso è dotato di un sito web: http://disi.unitn.it/~montreso/asd/ Trovate: Lucidi e appunti Video lezioni Software didattico Esercizi e compiti passati Progetti Approfondimenti 12 © Alberto Montresor

Analisi degli algoritmi Notazione asintotica Ricorrenze Programma del corso Introduzione Analisi degli algoritmi Notazione asintotica Ricorrenze Analisi ammortizzata Strutture dati: Pile, code, liste Alberi Alberi bilanciati Tabelle hash Grafi Strutture speciali Tecniche di programmazione Scelta della struttura dati Divide et impera Programmazione dinamica Algoritmi greedy Ricerca locale Backtrack Algoritmi probabilistici Problemi intrattabili (cenni) Teoria dell’NP-completezza Tecniche risolutive 13 © Alberto Montresor

Prof. Alberto Montresor Titolare, lezioni “teoriche”, esercitazioni Docente e assistenti Prof. Alberto Montresor Titolare, lezioni “teoriche”, esercitazioni http://disi.unitn.it/~montreso/ Dott. Alessandra Giordani Esercitazioni in aula agiordani@disi.unitn.it Dott. Alessio Guerrieri Correzione progetti laboratorio, esercitazioni in laboratorio guerrieri@science.unitn.it 14 © Alberto Montresor

Domande? 15 © Alberto Montresor

Figura e ruolo dei docenti Domande, domande, domande Se ci sono punti poco chiari nella lezione, non esitate a domandare ulteriori spiegazioni Se volete ulteriori approfondimenti su uno degli argomenti delle lezioni, chiedete e vi sarà dato 16 © Alberto Montresor

Laptop proibiti in aula durante le lezioni! 17 © Alberto Montresor

Bertossi, Montresor Algoritmi e Strutture di Dati Tecniche nuove, 2010 Testi Libro adottato Bertossi, Montresor Algoritmi e Strutture di Dati Tecniche nuove, 2010 Per approfondimenti: Cormen, Leiserson, Rivest, Stein Introduction to Algorithms The MIT Press; 3nd edition (2009) Jon Kleinberg, Eva Tardos Algorithm Design Addison Wesley, 1st edition (2006) 18 © Alberto Montresor

Organizzazione di una settimana di corso Lezioni e ricevimento Organizzazione di una settimana di corso Martedì 14.30-16.30 Lezione A103 Mercoledì 10.30-12.30 Laboratorio gruppo 1 PC 104 13.30-15.30 Laboratorio gruppo 2 PC 104 Giovedì 14.30-16.30 Lezione A103 Venerdì 10.30-12.30 Esercitazione in aula A103 Ricevimento Via mail, quando volete Dopo ogni lezione, in aula Su appuntamento 19 © Alberto Montresor

Diviso in due parti obbligatorie: Esame Diviso in due parti obbligatorie: Scritto risoluzione problemi (+lab) 50% E’ possibile usare libri e appunti, non strumenti elettronici Orale 50% Dovete dimostrare di aver capito - non di sapere a memoria Alcune regole Niente orale se non avete passato lo scritto (voto minimo: 18) Niente orale se non avete consegnato almeno una esercitazione Dopo aver passato lo scritto, potete venire all'orale quante volte volete Se vi ripresentate ad uno scritto, i voti precedenti vengono persi Dovete completare l’orale entro febbraio 2014, poi tutti i voti vengono cancellati 20 © Alberto Montresor

Esercitazioni di laboratorio Corrette tramite mezzi automatici via interfaccia web Cheating detection Due esercitazioni durante il corso Deadline: aprile, maggio Se consegnate entro le deadline previste, danno origine a punteggio aggiuntivo da sommare al vostro voto scritto (max +2,+3) Esercitazioni dopo il corso Per accedere all’orale dovete consegnare almeno una esercitazione funzionante Esercitazioni diverse in sessioni diverse, con deadline specifiche NON danno origine a punteggio aggiuntivo 21 © Alberto Montresor

Scritti parziali e laboratorio (date da decidere) Lab. 1 - Deadline metà aprile Scritto parziale 1 - Fine aprile Lab. 2 - Deadline metà maggio Scritto parziale 2 - Fine maggio Per accedere all’orale in Giugno, Luglio 2012 Scritto: (apr and mag) or giu or lug Lab: (apr or mag) Per accedere all’orale in Settembre 2012 Scritto: (apr and mag) or giu or lug or set Lab: (apr or mag) or set Per accedere all’orale in Gennaio,Febbraio 2013 Scritto: (apr and mag) or giu or lug or set or gen or feb Lab: (apr or mag) or set or gen 22 © Alberto Montresor

Pagina del corso vs Esse3 - la mia pagina è più aggiornata Argomenti vari Varie ed eventuali Mailing list Pagina del corso vs Esse3 - la mia pagina è più aggiornata Dopo primo midterm: ricevimento “obbligatorio” 23 © Alberto Montresor

Se avete bisogno di qualunque cosa, chiedete al docente "Cheating policies" Durante gli scritti E' vietato comunicare in qualunque modo (oralmente, in forma scritta o elettronicamente), per qualsivoglia motivo. Chi viene sorpreso a parlare, viene invitato a lasciare l'aula e a ripresentarsi al prossimo appello Questo vale per entrambi gli "estremi" della comunicazione: sia chi parla che chi ascolta Nota: Se avete bisogno di qualunque cosa, chiedete al docente 24 © Alberto Montresor

"Cheating policies" Dopo gli scritti Il compito potrà essere annullato anche in caso di manifesta copiatura scoperta nel corso della correzione degli scritti Anche in questo caso, l'annullamento riguarda sia il "copiatore" che il "copiato" 25 © Alberto Montresor