Algoritmi e Strutture Dati
L'iscrizione al Corso Singolo può essere effettuata anche senza iscriversi ad un Corso di Laurea specifico
Non è un Corso di Laurea o un Master
Aperto a tutti
On Demand
Iscrizioni Aperte
Nessun Test d'Ingresso
Domande Frequenti sui Corsi Unimarconi
Un corso singolo è un insegnamento universitario che può essere seguito senza essere iscritti a un intero corso di laurea. Al termine, è possibile sostenere l’esame e ottenere un attestato con il relativo numero di CFU.
Chiunque sia in possesso di un diploma di scuola superiore può iscriversi. I corsi singoli sono ideali per chi vuole integrare la propria formazione, acquisire crediti per concorsi, o valutare un possibile percorso universitario.
Sì, al superamento dell’esame viene rilasciata una certificazione con i crediti formativi universitari (CFU) acquisiti, riconosciuti dal MUR e utilizzabili secondo la normativa vigente.
È possibile iscriversi ai Corsi dell’Università Marconi tramite un Infopoint autorizzato dell’Università Guglielmo Marconi. L’Infopoint fornisce ASSISTENZA GRATUITA nella scelta del corso e nella compilazione della domanda.
Algoritmi e Strutture Dati – Il cuore dell’informatica moderna
❓ Come si progettano soluzioni informatiche davvero efficienti?
Il corso di Algoritmi e Strutture Dati è fondamentale per chi desidera acquisire competenze solide nella progettazione algoritmica, nell’ottimizzazione del codice e nella gestione efficace delle informazioni. Imparerai a ragionare in termini di performance e a scrivere codice elegante, potente e scalabile, utilizzando pseudocodice e Python.
🎯 Obiettivi formativi
Al termine del corso sarai in grado di:
📚 Comprendere i concetti chiave di algoritmi e strutture dati
⚙️ Progettare algoritmi utilizzando tecniche come divide et impera, greedy, backtracking, programmazione dinamica
⏱ Valutare l’efficienza degli algoritmi in termini di tempo e spazio
🧰 Selezionare le strutture dati più adatte per ogni tipo di problema
🗣 Comunicare e rappresentare visivamente le soluzioni con diagrammi e pseudocodice
🧠 Affrontare problemi complessi con un approccio logico, autonomo e creativo
📋 Contenuti del corso
🔍 Analisi e progettazione
- Notazione Big-O e analisi dei casi medi/peggiori
- Progettazione algoritmica: Greedy, Backtracking, Programmazione dinamica
📦 Strutture dati fondamentali
- Array, liste concatenate, stack, queue
- Alberi: binari, AVL, rosso-neri
- Heap, grafi, tabelle hash
🔄 Ordinamento e ricerca
- Selection sort, merge sort, quick sort, heap sort
- Ricerca binaria e algoritmi di string matching
🗺 Algoritmi su grafi
- BFS, DFS, Dijkstra, Bellman-Ford
- Alberi di copertura minimi: Kruskal, Prim
🧩 Temi avanzati
- Classi di complessità: P, NP, NP-completezza
- Introduzione ad algoritmi randomizzati, di approssimazione, quantistici
📚 Prerequisiti consigliati
Per affrontare al meglio il corso è utile avere familiarità con:
✅ Un linguaggio di programmazione (C, Java, Python…)
📊 Matematica discreta (logica, grafi, insiemi, dimostrazioni)
➗ Calcolo e algebra lineare
🖥 Architettura dei calcolatori
📈 Nozioni di statistica e probabilità (per argomenti avanzati)
🧑🏫 Modalità didattiche
📺 Didattica Erogativa
- Videolezioni mirate (5 ore per CFU)
- Dispense PDF con sintesi teoriche e applicative
- Esempi pratici di codifica e confronto tra soluzioni algoritmiche
💬 Didattica Interattiva
- Attività asincrone (FAQ, esercitazioni guidate)
- Aule virtuali con discussione e feedback formativo
- Approccio partecipativo e analitico
📝 Verifica dell’apprendimento
🧾 Esame scritto
- Durata: 120 minuti
- 3 domande aperte + 5 domande a risposta chiusa
- Valutazione basata su:
✔ Conoscenze teoriche
✔ Padronanza sintattica e semantica
✔ Capacità di progettare algoritmi efficienti
✔ Chiarezza e precisione nelle spiegazioni
📌 L’esame è in presenza, come previsto dal DM 270/2004
📌 Le prove intermedie di verifica (facoltative) sono fortemente consigliate
📘 Testi di riferimento
🟦 Consigliati per lo studio:
- Cormen, Leiserson, Rivest, Stein – Introduzione agli algoritmi e strutture dati, McGraw-Hill
- Demetrescu, Finocchi, Italiano – Algoritmi e strutture dati, McGraw-Hill
👨💻 A chi è rivolto questo corso?
✅ Studenti dei corsi di laurea in Informatica e Ingegneria
✅ Chi desidera specializzarsi nello sviluppo software, nell’analisi dati o nell’ottimizzazione di codice
✅ Chi vuole costruire una base solida per affrontare algoritmi avanzati