Tecniche Avanzate di Programmazione

Per il corso di Medicina e Chirurgia TD Interateneo – UniCz – Magna Graecia

SYLLABUS

Contenuti

Fondamenti, Struttura e Complessità

  • Modello Run-time e Struttura del Programma Python
  • Complessità di Calcolo (Approfondimento sulla notazione Big O)

Tecniche Algoritmiche: Ricorsione e Divide et Impera

  • Ricorsione (Approfondimento e Applicazioni)
  • Tecnica Divide et Impera (Principio, Ricerca Binaria, Merge Sort – Concetto e implementazione)

Strutture Dati

  • Array, Puntatori e Linked List
  • Pila, Coda
  • Alberi e implementazione con puntatori
  • Algoritmi su Array e Liste

Cenni su Grafi e Applicazioni Mediche

  • Grafi
  • Djkstra
  • Applicazione: percorso minimo sinaptico

Argomenti Libro

Libro: Introduzione Agli Algoritmi E Strutture Dati (Cormen, Leiserson, Rivest, Stein) – 3a Edizione

Cap 1: 1.1, 1.2
Cap 2: 2.2, 2.3 (Solo Big O)
Cap 10: 10.1, 10.2 (Sentinelle NO)
Cap 16: 16.1, 16.2
Cap 24: 24.1 24.4

Obiettivi

Padroneggiare le tecniche studiate, essendo in grado sia di analizzare codice che di implementarlo.

Risorse

Nota: Le slide e gli esercizi sono in continuo aggiornamento

Fondamenti Struttura e Complessita: https://www.diariodiunanalista.it/posts/algoritmi-e-strutture-dati-per-la-data-science-in-python-parte-1/

Tecniche Algoritmiche: Ricorsione e Divide et Impera: https://www.mat.unical.it/terracina/fondamenti2/divideetimpera.pdf

Tecnica Greedy e Strutture Lineari https://dario.ostuni.xyz/sfide/

Strutture Dati Ad Albero https://dario.ostuni.xyz/sfide/

Cenni su Grafi e Applicazioni Mediche https://dario.ostuni.xyz/sfide/

Esame

Esame scritto di teoria con domande miste a risposta multipla o aperta.
Esame scritto di programmazione con esercizi in python da svolgere.
Orale a discrezione del docente.