Leonardo RUNDO | ALGORITMI E STRUTTURE DATI
Leonardo RUNDO ALGORITMI E STRUTTURE DATI
cod. 0612700006
ALGORITMI E STRUTTURE DATI
0612700006 | |
DIPARTIMENTO DI INGEGNERIA DELL'INFORMAZIONE ED ELETTRICA E MATEMATICA APPLICATA | |
CORSO DI LAUREA | |
INGEGNERIA INFORMATICA | |
2021/2022 |
OBBLIGATORIO | |
ANNO CORSO 2 | |
ANNO ORDINAMENTO 2017 | |
PRIMO SEMESTRE |
SSD | CFU | ORE | ATTIVITÀ | |
---|---|---|---|---|
ING-INF/05 | 4 | 32 | LEZIONE | |
ING-INF/05 | 3 | 24 | ESERCITAZIONE | |
ING-INF/05 | 2 | 16 | LABORATORIO |
Obiettivi | |
---|---|
L’INSEGNAMENTO APPROFONDISCE GLI ASPETTI RELATIVI ALLA PROGETTAZIONE E REALIZZAZIONE DI ALGORITMI, UTILIZZANDO TECNICHE ITERATIVE E RICORSIVE E VALUTANDO L’EFFICIENZA DEI PROGRAMMI OTTENUTI E LE STRUTTURE DATI FONDAMENTALI CURANDONE LA REALIZZAZIONE IN LINGUAGGIO C. CONOSCENZE E CAPACITÀ DI COMPRENSIONE ALGORITMI E STRUTTURE DATI FONDAMENTALI: ALGORITMI DI ORDINAMENTO E SELEZIONE, ARRAY DINAMICI, LISTE, ALBERI, TABELLE HASH, PILE E CODE. PARADIGMI DI PROGRAMMAZIONE ITERATIVA E RICORSIVA. CONFRONTO DI ALGORITMI SULLA BASE DELL’EFFICIENZA DI MEMORIA E DI ESECUZIONE. CONOSCENZA E CAPACITÀ DI COMPRENSIONE APPLICATE ANALIZZARE PROBLEMI TIPICI E REALIZZARE APPLICAZIONI CHE LI RISOLVANO UTILIZZANDO ALGORITMI E STRUTTURE DATI STANDARD IN LINGUAGGIO C, VALUTANDONE L’EFFICIENZA. REALIZZARE PROGETTI SOFTWARE IN C DI PICCOLE DIMENSIONI IMPIEGANDO LA COMPILAZIONE SEPARATA. |
Prerequisiti | |
---|---|
PER IL PROFICUO RAGGIUNGIMENTO DEGLI OBIETTIVI PREFISSATI SONO RICHIESTE CONOSCENZE SULLA PROGRAMMAZIONE IN LINGUAGGIO C. |
Contenuti | |
---|---|
COMPLEMENTI DI PROGRAMMAZIONE IN C (ORE LEZIONE/ESERCITAZIONE/LABORATORIO 4/2/2) PUNTATORI, ARRAY E PUNTATORI, ARITMETICA DEI PUNTATORI. LE STRUTTURE RICORSIONE (ORE LEZIONE/ESERCITAZIONE/LABORATORIO 4/2/2) ASPETTI E DEFINIZIONI GENERALI. INDUZIONE MATEMATICA. DIVIDE ET IMPERA. ALGORITMI RICORSIVI NOTEVOLI: HANOI, QUICKSORT, MERGESORT COMPLESSITÀ COMPUTAZIONALE (ORE LEZIONE/ESERCITAZIONE/LABORATORIO 4/2/0) DEFINIZIONI, IL MODELLO RAM, NOTAZIONI FUNZIONI BIG-O, OMEGA, THETA, CALCOLO DI COMPLESSITÀ (I VARI COSTRUTTI), CALCOLO DI COMPLESSITÀ DEGLI ALGORITMI, FORMULE DI RICORRENZA, RICORRENZE NOTEVOLI E LORO RISOLUZIONE, CENNI ALLA ANALISI AMMORTIZZATA LISTE DINAMICHE (ORE LEZIONE/ESERCITAZIONE/LABORATORIO 6/4/2) ASPETTI GENERALI, CLASSIFICAZIONE E STRUTTURA DATI, ALGORITMI DI BASE (IN VERSIONE ITERATIVA E RICORSIVA): CREAZIONE, INSERIMENTO, RICERCA, CANCELLAZIONE, VISITA, ALTRI ALGORITMI SULLE LISTE ALBERI BINARI (ORE LEZIONE/ESERCITAZIONE/LABORATORIO 5/5/2) ASPETTI GENERALI, CLASSIFICAZIONE E STRUTTURA DATI, ALGORITMI DI BASE (IN VERSIONE ITERATIVA E RICORSIVA): CREAZIONE, INSERIMENTO, RICERCA, CANCELLAZIONE, VISITA, ALTRI ALGORITMI SUGLI ALBERI TABELLE HASH (ORE LEZIONE/ESERCITAZIONE/LABORATORIO 5/5/2) ASPETTI GENERALI, HASHING ESTERNO ED INTERNO, ALGORITMI DI BASE (IN VERSIONE ITERATIVA E RICORSIVA): CREAZIONE, INSERIMENTO, RICERCA, CANCELLAZIONE, VISITA, ALTRI ALGORITMI SULLE TABELLE HASH STRUMENTI CASE (ORE LEZIONE/ESERCITAZIONE/LABORATORIO 2/2/6) AMBIENTI DI PROGRAMMAZIONE, DEBUGGING E TESTING, COMPILAZIONE SEPARATA E LIBRERIE SUPPORTO A RUN-TIME (ORE LEZIONE/ESERCITAZIONE/LABORATORIO 2/2/2) ASPETTI GENERALI SUI MODELLI DI MEMORIA, MEMORIA STATICA E MEMORIA DINAMICA, STACK E RECORD DI ATTIVAZIONE TOTALE ORE LEZIONE/ESERCITAZIONE/LABORATORIO 32/24/16 |
Metodi Didattici | |
---|---|
L’INSEGNAMENTO CONTEMPLA LEZIONI TEORICHE, ESERCITAZIONI IN AULA ED ESERCITAZIONI PRATICHE DI LABORATORIO. NELLE ESERCITAZIONI IN AULA VENGONO PROPOSTI E COMMENTATI ALGORITMI E LA RELATIVA CODIFICA IN LINGUAGGIO C, UTILIZZANDO OPPORTUNI STRUMENTI CASE. NELLE ESERCITAZIONI IN LABORATORIO GLI STUDENTI SVOLGONO LE PRECEDENTI ATTIVITÀ IN AUTONOMIA SULLA BASE DELLE SPECIFICHE FORNITE DAL DOCENTE. PER POTER SOSTENERE LA VERIFICA FINALE DEL PROFITTO E CONSEGUIRE I CFU RELATIVI ALL’ATTIVITÀ FORMATIVA, LO STUDENTE DOVRÀ AVERE FREQUENTATO ALMENO IL 70% DELLE ORE PREVISTE DI ATTIVITÀ DIDATTICA ASSISTITA. |
Verifica dell'apprendimento | |
---|---|
LA PROVA DI ESAME È FINALIZZATA A VALUTARE NEL SUO COMPLESSO: LA CONOSCENZA E LA CAPACITÀ DI COMPRENSIONE DEI CONCETTI PRESENTATI AL CORSO; LA CAPACITÀ DI APPLICARE TALI CONOSCENZE PER LA RISOLUZIONE DI PROBLEMI CHE RICHIEDONO L’UTILIZZO DI ALGORITMI E STRUTTURE DATI FONDAMENTALI, VALUTANDONE L’EFFICIENZA DI ELABORAZIONE; L’AUTONOMIA DI GIUDIZIO, LE ABILITÀ COMUNICATIVE E LA CAPACITÀ DI APPRENDERE. ESSA CONSISTE DI UNA PROVA PRATICA E DI UNA PROVA TEORICA. LA PROVA PRATICA È TESA AD ACCERTARE LE COMPETENZE NEL REALIZZARE PROGRAMMI IN LINGUAGGIO C CHE USANO ALGORITMI (ORDINAMENTO E SELEZIONE) E STRUTTURE DATI DI BASE (PILE, CODE, LISTE, ALBERI, TABELLE HASH), ED È REALIZZATA DIRETTAMENTE SUL SISTEMA DI ELABORAZIONE PERSONALE. SONO CONSIDERATE CAPACITÀ MINIME QUELLE DI RISOLVERE IL PROBLEMA PROPOSTO, SENZA ERRORI SINTATTICI RILEVANTI; SONO RITENUTE CAPACITÀ MASSIME QUELLA DI PERVENIRE A SOLUZIONI ALGORITMICHE CHE SIANO EFFICIENTI E CHE FACCIANO USO DELLE STRUTTURE DATI E DEGLI ALGORITMI PIÙ ADEGUATI, SIA IN VERSIONE ITERATIVA CHE RICORSIVA. IL SUPERAMENTO DELLA PROVA PRATICA È CONDIZIONE PER ACCEDERE ALLA PROVA TEORICA CHE VERTERÀ SU TUTTI GLI ARGOMENTI DEL CORSO E LA VALUTAZIONE TERRÀ CONTO DELLE CONOSCENZE DIMOSTRATE DALLO STUDENTE E DEL GRADO DEL LORO APPROFONDIMENTO, DELLA CAPACITÀ DI APPRENDERE DIMOSTRATA, DELLA QUALITÀ DELL’ESPOSIZIONE. AI FINI DEL VOTO FINALE, ESPRESSO IN TRENTESIMI, LA PROVA PRATICA CONTRIBUISCE PER IL 60% E LA PROVA TEORICA PER IL 40%. LA LODE PUÒ ESSERE ATTRIBUITA AGLI STUDENTI CHE DIMOSTRINO UNA OTTIMA CAPACITÀ DI ANALISI E DI PROGETTO DI ALGORITMI E STRUTTURE DATI. |
Testi | |
---|---|
P. FOGGIA, M. VENTO, “ALGORITMI E STRUTTURE DATI: ASTRAZIONE, PROGETTO E REALIZZAZIONE”, MCGRAW-HILL. MATERIALE DIDATTICO INTEGRATIVO SARA' DISPONIBILE NELLA SEZIONE DEDICATA DELL'INSEGNAMENTO ALL'INTERNO DELLA PIATTAFORMA E-LEARNING DI ATENEO (HTTP://ELEARNING.UNISA.IT) ACCESSIBILE AGLI STUDENTI DEL CORSO TRAMITE LE CREDENZIALI UNICHE DI ATENEO. |
Altre Informazioni | |
---|---|
L'INSEGNAMENTO E' EROGATO IN ITALIANO |
BETA VERSION Fonte dati ESSE3 [Ultima Sincronizzazione: 2022-11-21]