Percorso di Algoritmi e Strutture Dati
Le dispene integrali del corso sono consultabili al seguente indirizzo:
http://www.dti.unimi.it/~aringhieri/
Algoritmo |
|
Complessità di un algoritmo |
|
Tempo di calcolo di un algoritmo e complessità computazionale asintotica in ordine di grandezza |
|
Algoritmi efficienti, non efficienti e ottimi, ordine polinominale e superpolinominale |
|
Strutture dati |
|
Tipologie di Strutture dati |
|
Liste, liste con puntatori, liste con cursori e Implementazione in C di una lista |
|
Pile e code, Realizzazione in C di una pila con vettore e di una coda con vettore circolare |
|
Alberi, visite di un albero e diverse realizzazioni di alberi |
|
Alberi binari, alberi decisionali e realizazione in C degli operatori di un albero binario |
|
Insiemi, realizzazione di un insieme con vettore booleano e con liste ordinate e non |
|
Mfset e realizzazione in C di un insieme Mfset |
|
Dizionari, realizzazione dizionario con vettore ordinato e ricerca binaria |
|
Realizzazione dizionario con tabelle hash e relativi metodi di scansione |
|
Coda di priorità, Heap e algoritmo di ordinamento heapsort |
|
Alberi binari di ricerca, Alberi 2-3 e B-Alberi |
|
Grafi, realizzazione di grafi con matrici e con insiemi di adiacenza |
|
Esplorazione di un grafo, DFS, BFS, e componenti connessi |
|
Progettazione di Algoritmi |
|
Divide et Impera, Mergesort e Quicksort |
|
Backtrack e Algoritmo di Knuth Morris Pratt |
|
Programmazione Dinamica e String Matching Approssimato |
|
Greedy, Scheduling di programmi e algoritmo di Moore, Minimo albero di copertura e algoritmo di Kruskal |
|
Ricerca Locale, TSP “Traveling Salesman Problem” |
|
Cammini minimi (SPT), algoritmo di Dijkstra e Johnson, e SPT con coda e con pila, algoritmo di Pape-D’Esopo |
|
Analisi di Complessità di algoritmi ricorsivi, espansione delle relazioni e relazioni di ricorrenza lineare |
|
Progetto di scheduling di programmi con algoritmo di Moore, eseguito in linguaggio C |
|
Tutto quanto riportato in questa pagina è a
puro scopo informativo personale. Se non ti trovi in accordo con quanto riportato
nella pagina, vuoi fare delle precisazioni, vuoi fare delle aggiunte o hai delle
proposte e dei consigli da dare, puoi farlo mandando un email.
Ogni indicazione è fondamentale per la continua crescita del sito.