

Studia grazie alle numerose risorse presenti su Docsity
Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium
Prepara i tuoi esami
Studia grazie alle numerose risorse presenti su Docsity
Prepara i tuoi esami con i documenti condivisi da studenti come te su Docsity
Trova i documenti specifici per gli esami della tua università
Preparati con lezioni e prove svolte basate sui programmi universitari!
Rispondi a reali domande d’esame e scopri la tua preparazione
Riassumi i tuoi documenti, fagli domande, convertili in quiz e mappe concettuali
Studia con prove svolte, tesine e consigli utili
Togliti ogni dubbio leggendo le risposte alle domande fatte da altri studenti come te
Esplora i documenti più scaricati per gli argomenti di studio più popolari
Ottieni i punti per scaricare
Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium
in questi appunti è spiegata la suddivisione della complessità degli algoritmi in spaziale, temporale e asintotica e sono descritte le caratteristiche dei più importanti algoritmi di ordinamento.
Tipologia: Appunti
1 / 2
Questa pagina non è visibile nell’anteprima
Non perderti parti importanti!


La complessità degli algoritmi si divide in: TEMPORALE : è il tempo necessario per l’esecuzione dell’algoritmo. Cresce al crescere delle dimensioni dei dati input. Le istruzioni possono essere di natura diversa: in virgola mobile, di controllo (es. gli if) e di accesso alla memoria secondaria e alle periferiche (es. hard disk esterni). SPAZIALE : è la memoria necessaria per l’esecuzione dell’algoritmo. ASINTOTICA : definisce le risorse usate da un algoritmo al crescere della dimensione del problema affrontato. Si applica a funzioni matematiche; si deve quindi trasformare il tempo di esecuzione in una funzione in funzione della dimensione dei dati input. n =dimensione dell’input dell’algoritmo; T(n) =tempo impiegato per l’esecuzione dell’algoritmo; f(n) =una qualsiasi funzione di n. Possono verificarsi 3 casi : caso migliore , intermedio , peggiore (richiedono rispettivamente da meno a più operazioni). Solitamente ci si riferisce al caso peggiore. Gli algoritmi vengono divisi in classi in base alla loro complessità temporale asintotica: a complessità costante O (1) o lineare O (n): sono molto veloci; a complessità polinomiale O (n a ): se l’esponente è piccolo; a complessità esponenziale O (an): se a>1 e l’esponente è molto piccolo. È considerata quasi inusabile perché richiede troppe informazioni. VARI ALGORITMI DI ORDINAMENTO- Gli algoritmi di ordinamento servono per ordinare una sequenza di elementi.