In questa lezione: correttezza del mergesort Analisi del mergesort: relazioni di ricorrenza e alberi della ricorsione

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "In questa lezione: correttezza del mergesort Analisi del mergesort: relazioni di ricorrenza e alberi della ricorsione"

Transcript

1 In questa lezione: correttezza del mergesort Analisi del mergesort: relazioni di ricorrenza e alberi della ricorsione Prof E Fachini - Intr Alg 1

2 MergeSort: correttezza MergeSort (A,p,r) if p < r then q (p+r)/2 MergeSort (A,p,q) MergeSort (A,q+1,r) Merge(A,p,q,r) Dimostriamo che Mergesort è corretto per induzione su n: Se n=1 è corretto Supponiamo che sia corretto per tutti gli arrays con meno di n elementi Sia A un array con n >1 elementi, allora p < r e si hanno le due chiamate su un numero di elementi che è circa la metà di n, quindi per queste chiamate vale l ipotesi induttiva: i due sottoarrys sono ordinati al termine dell esecuzione Poi si chiama la Merge, che correttamente fonde i due sottoarrays ordinati in uno ordinato di n elementi Prof E Fachini - Intr Alg 2

3 MergeSort: complessità MergeSort (A,p,r) if p < r then q (p+r)/2 MergeSort (A,p,q) MergeSort (A,q+1,r) Merge(A,p,q,r) Θ(1) Θ(1)?? Θ(n) T( n/2 ) T( n/2 ) Parte intera superiore Parte intera inferiore T(n) = Θ(1) se n 1 Relazione di ricorrenza T(n) = T( n/2 ) + T( n/2 ) + Θ(n) altrimenti Prof E Fachini - Intr Alg 3

4 Risolvere una ricorrenza Una ricorrenza è un equazione o una disequazione che lega il valore di una funzione ai valori che essa assume su argomenti più piccoli Risolvere una ricorrenza per una funzione T(n) consiste nel determinare un limite asintotico (O grande, Ω o Θ) per T(n) Metodo di soluzione: Sostituzione Prof E Fachini - Intr Alg 4

5 Metodo della sostituzione Fase 1 Si fa un ipotesi (guess) sulla soluzione Fase 2 Si verifica se la previsione è esatta, usando l induzione Prof E Fachini - Intr Alg 5

6 Preliminari: esplicitare le costanti Per poter risolvere una ricorrenza bisogna esplicitare le costanti nascoste T(n) = Θ(1) se n 1 T(n) = T( n/2 ) + T( n/2 ) + Θ(n) altrimenti Dove d e c sono costanti positive T(n) = d se n 1 T(n) = T( n/2 ) + T( n/2 ) + cn altrimenti Prof E Fachini - Intr Alg 6

7 Semplificare La ricorrenza è T(n) = d se n 1 T(n) = T( n/2 ) + T( n/2 ) + cn altrimenti Passiamo ai reali: T(n) = 2T(n/2) + cn altrimenti Prof E Fachini - Intr Alg 7

8 Risolvere una ricorrenza Ora la nostra ricorrenza è Sia n= 2 h T(n) = 2T(n/2)+cn = 2[2T(n/2/2)+cn/2] +cn = 4T(n/4)+ 2cn/2 +cn = 4[2T(n/4/2)+cn/4] + cn +cn = = 8T(n/8)+4cn/4 + cn +cn = Quante volte devo sommare cn a se stesso? h = 2 h T(1) + hc n Prof E Fachini - Intr Alg 8

9 Risolvere la ricorrenza 2 T(n) = 2 h T(1) + c n + + cn = 2 h T(1) + h c n Ma h = lg n Per cui T(n) = 2 h T(1) + c n lg n = dn + cn lg n Questo ci consentirà di concludere che la complessità del Mergesort è Θ(nlg n) Qualche volta queste sostituzioni sono difficili da gestire, può aiutare arrangiare i costi in un albero Prof E Fachini - Intr Alg 9

10 Albero di ricorsione T(n) = d se n 1 T(n) = 2T(n/2)+cn Sia n= 2 h livello 0 cn livello 1 cn/2 cn/2 livello 2 cn/2 2 cn/2 2 cn/2 2 cn/2 2 ivello h d d d d d d Prof E Fachini - Intr Alg 10

11 Albero di ricorsione T(n) = 2T(n/2)+cn cn Sia n= 2 h cn h cn/2 cn/2 cn/2 2 cn/2 2 cn/2 2 cn/2 2 d d d cn/2 + cn/2= cn 4cn/2 2 = cn d2 h = dn E un albero binario di altezza h, con h+1 livelli Su ogni livello, tranne l ultimo, la somma dei costi è cn quindi si ha un costo totale cn h+ dn = cn lg n + dn Prof E Fachini - Intr Alg 11

12 Conclusione Dimostriamo che esistono due costanti a e n0 tale che cn lg n + dn a(n lg n), per ogni n n0 Basta prendere a = c+d e n0 = 2 Dimostriamo che esistono due costanti b e n0 tale che cn lg n + dn b(n lg n), per ogni n n0 Basta prendere b = c e n0 = 1 Quindi concludiamo che c(n lg n) cn lg n + dn (c+d)(n lg n) per ogni n 2, cioè che T(n) = Θ(nlg n) Prof E Fachini - Intr Alg

13 F(n) = 0 F(n-1) + c Esempio 2 se n=0 se n>0 F(n) = c + F(n-1) = c + c + F(n-2) = 2c +F(n-2) = 2c + c +F(n-3) = 3c + F(n-3) E quindi per n k F(n) = kc + F(n-k) Quando k = n F(n) = cn + F(0) = cn Quindi F(n) = Θ(n) = kc + F(n-k) = ck + F(n-k) Prof E Fachini - Intr Alg 13

14 Semplificare la ricorrenza nell analisi Poiché il caso base, nel contesto dell analisi degli algoritmi, è sempre una costante, possiamo ometterlo Per esempio per descrivere la complessità del mergesort con una ricorrenza possiamo scrivere T(n) = 2T(n/2) + Θ(n) invece di T(n) = Θ(1) se n 1 T(n) = 2T(n/2) + Θ(n) altrimenti Prof E Fachini - Intr Alg 14

15 Fase 1 - la previsione Per la ricorrenza T(n) = 3T(n/4) + Θ(n 2 ) conviene usare un albero di ricorsione Prof E Fachini - Intr Alg 15

16 T(n) = c se n 1 T(n) = 3T(n/4) + cn 2 Albero di ricorsione Sia n= 4 h livello 0 livello 1 cn 2 c(n/4) 2 c(n/4) 2 c(n/4) 2 cn 2 3cn 2 /16 livello 2 livello h c(n/4 2 ) 2 c(n/4 2 ) 2 c(n/4 2 ) 2 c(n/42 ) cn 2 /16 2 c c c c c c c c c I nodi del livello h sono 3 h, per un costo totale 3 h c Prof E Fachini - Intr Alg 16

17 Albero di ricorsione T(n) = c se n 1 T(n) = 3T(n/4) + cn 2 livello 0 cn 2 Sia n= 4 h cn 2 livello 1 c(n/4) 2 c(n/4) 2 c(n/4) 2 3cn 2 /16 livello 2 livello h c(n/4 2 ) 2 c(n/4 2 ) 2 c(n/4 2 ) 2 c(n/42 ) cn 2 /16 2 c c c c c c c c c 3 h c h = log4 n, con un cambio di base log4 n = log3 n log4 3 3 h c = 3 log 3 n log4 3 c = n log 4 3 c Prof E Fachini - Intr Alg 17

18 T(n) = c se n 1 T(n) = 3T(n/4) + cn 2 Albero di ricorsione cn 2 Sia n= 4 h cn 2 c(n/4) 2 c(n/4) 2 c(n/4) 2 3cn 2 /16 h c(n/4 2 ) 2 c(n/4 2 ) 2 c(n/4 2 ) 2 ) cn 2 /16 2 c c c c c c c c c cn log 4 3 T(n)=(3/16) 0 cn 2 +(3/16)cn 2 +(3/16) 2 cn 2 + +(3/16) h cn h-1 + cn log 4 3 Prof E Fachini - Intr Alg 18

19 Conteggi (3/16) 0 cn 2 +(3/16)cn 2 +(3/16) 2 cn 2 + +(3/16) h-1 cn 2 + cn log 4 3 = cn 2 [(3/16) 0 +(3/16) + +(3/16) h-1 ] + cn log 4 3 Poiché 3/16 <1, se maggioriamo la serie di potenze finita con la serie estesa all infinito, possiamo sfruttare il fatto che questa serie converge a una costante Σi 0 (3/16) i = Θ(1) Potremmo concludere che T(n) = O(n 2 ), visto che log4 3 < 2 Siamo sicuri di questo risultato? Prof E Fachini - Intr Alg 19

20 Fase 2: verifica T(n) = 3T(n/4) + Θ(n 2 ) E vogliamo far vedere che T(n) = O(n 2 ) cioè che T(n) dn 2, per un certo d e per ogni n n0 Usiamo l induzione Passo induttivo: Supponiamo che sia vero per ogni m<n e consideriamo T(n) T(n)= 3T(n/4) + cn 2 3d(n/4) 2 + cn 2 = (3/16)dn 2 + cn 2 dn 2 basta prendere d (16/13)c Il caso base è ovvio essendo una costante Prof E Fachini - Intr Alg 20

21 Conclusione T(n) = 3T(n/4) + Θ(n 2 ) Abbiamo provato che T(n) =O(n 2 ) Osserviamo che il termine additivo è in Θ(n 2 ), fornendo un limite inferiore alla soluzione per T(n) Quindi possiamo dire che T(n) = Ω(n 2 ) e in definitiva che T(n) = Θ(n 2 ) Prof E Fachini - Intr Alg 21

22 Divide et impera: analisi Dato un problema di dimensione (taglia) n Dividi: dividi il problema in a sottoproblemi ciascuno di taglia n/b Conquista: risolvi ricorsivamente i sottoproblemi, quando il sottoproblema è di taglia minore o uguale a c risolvilo direttamente Combina: usa le soluzioni dei sottoproblemi per determinare la soluzione del problema dato D(n) at(n/b) Θ(1) C(n) T(n) = Θ(1) se n c T(n) = at(n/b) + D(n) + C(n) se n > c Prof E Fachini - Intr Alg 22

23 Esempio 3 Una relazione di ricorrenza può essere impostata per risolvere un problema: calcola in quanti modi si può salire su una scala di n gradini, se ad ogni passo si sale di 1 o di 2 scalini ModiSalita(1) = 1 ModiSalita(2) = 2 ModiSalita(n) = ModiSalita(n-1) + ModiSalita(n-2) Perché il primo addendo dà conto di tutti i modi che terminano con la salita di un solo scalino e l altro quelli che terminano con 2 scalini In ModiSalita(n-2) se completo con la modalità uno scalino alla volta, ricalcolo le modalità considerate in ModiSalita(n-1), quindi bisogna tener conto solo della modalità che termina con 2 scalini Prof E Fachini - Intr Alg 23

In questa lezione. Il Mergesort: primo esempio di applicazione della tecnica divide et impera analisi tempo di esecuzione del Mergesort

In questa lezione. Il Mergesort: primo esempio di applicazione della tecnica divide et impera analisi tempo di esecuzione del Mergesort In questa lezione Il Mergesort: primo esempio di applicazione della tecnica divide et impera analisi tempo di esecuzione del Mergesort [CLRS] par. 2.3. Prof. E. Fachini - Intr. Alg.!1 Progettazione di

Dettagli

QuickSort (1962, The Computer Journal)

QuickSort (1962, The Computer Journal) QuickSort (1962, The Computer Journal) Charles Antony Richard Hoare (1934 -) Attualmente senior researcher al Microsoft Research Center di Cambridge Hoare ha vinto nel 1980 il Turing Award, il premio più

Dettagli

Tecniche Algoritmiche: divide et impera

Tecniche Algoritmiche: divide et impera Tecniche Algoritmiche: divide et impera Una breve presentazione F. Damiani - Alg. & Lab. 04/05 Divide et impera (o Divide and conquer) Per regnare occorre tenere divisi i nemici e trarne vantaggio F. Damiani

Dettagli

QuickSort (1962, The Computer Journal)

QuickSort (1962, The Computer Journal) QuickSort (1962, The Computer Journal) Charles Antony Richard Hoare (1934 -) Attualmente senior researcher al Microsoft Research Center di Cambridge Hoare ha vinto nel 1980 il Turing Award, il premio più

Dettagli

Per regnare occorre tenere divisi i nemici e trarne vantaggio. fai ad ogni passo la scelta più conveniente

Per regnare occorre tenere divisi i nemici e trarne vantaggio. fai ad ogni passo la scelta più conveniente Progetto di algoritmi sequenziali (un solo esecutore ) Divide et Impera Per regnare occorre tenere divisi i nemici e trarne vantaggio Greedy fai ad ogni passo la scelta più conveniente Buoni risultati

Dettagli

Analisi algoritmi ricorsivi e relazioni di ricorrenza

Analisi algoritmi ricorsivi e relazioni di ricorrenza Analisi algoritmi ricorsivi e relazioni di ricorrenza Punto della situazione Finora abbiamo affrontato: il tempo di esecuzione di un algoritmo, l analisi asintotica con le notazioni asintotiche e la tecnica

Dettagli

CAPITOLO 2. Divide et Impera

CAPITOLO 2. Divide et Impera CAPITOLO 2 Divide et Impera In questo capitolo discuteremo alcuni algoritmi progettati mediante la tecnica di progettazione del Divide et Impera. Algoritmi progettati usando questa tecnica consistono di

Dettagli

Algoritmi e Strutture Dati

Algoritmi e Strutture Dati Algoritmi Ricorsivi e Maria Rita Di Berardini, Emanuela Merelli 1 1 Dipartimento di Matematica e Informatica Università di Camerino A.A. 2006/07 I conigli di Fibonacci Ricerca Binaria L isola dei conigli

Dettagli

Algoritmi e Strutture Dati. Analisi di algoritmi Funzioni di costo, notazione asintotica

Algoritmi e Strutture Dati. Analisi di algoritmi Funzioni di costo, notazione asintotica Algoritmi e Strutture Dati Analisi di algoritmi Funzioni di costo, notazione asintotica Alberto Montresor Università di Trento 2018/12/27 This work is licensed under a Creative Commons Attribution-ShareAlike

Dettagli

Algoritmi e Strutture Dati

Algoritmi e Strutture Dati Algoritmi Ricorsivi e Ricorrenze Maria Rita Di Berardini 2, Emanuela Merelli 1 1 Dipartimento di Matematica e Informatica Università di Camerino 2 Polo di Scienze Università di Camerino ad Ascoli Piceno

Dettagli

Algoritmi e Strutture Dati

Algoritmi e Strutture Dati Algoritmi Ricorsivi e Maria Rita Di Berardini, Emanuela Merelli 1 1 Dipartimento di Matematica e Informatica Università di Camerino I conigli di Fibonacci Ricerca Binaria L isola dei conigli Leonardo da

Dettagli

Si imposti la relazione di ricorrenza che ne descrive la complessità e la si risolva utilizzando il metodo della sostituzione.

Si imposti la relazione di ricorrenza che ne descrive la complessità e la si risolva utilizzando il metodo della sostituzione. parte II - A 2 Si consideri la seguente funzione: analizzami(int n) c = 1 k = n*n while k > 1 do k = k/2 for i = 0 to 3 do if n >1 then analizzami(n/4) Si imposti la relazione di ricorrenza che ne descrive

Dettagli

Nozioni di base (II Parte)

Nozioni di base (II Parte) Nozioni di base (II Parte) 1 Ricorsione [GTG14, Par. 5.1-5.4 and 13.1] Algoritmo Ricorsivo: algoritmo che invoca se stesso (su istanze sempre più piccole) sfruttando la nozione di induzione. La soluzione

Dettagli

Algoritmi e strutture dati. Analisi di algoritmi Funzioni di costo, notazione asintotica

Algoritmi e strutture dati. Analisi di algoritmi Funzioni di costo, notazione asintotica Algoritmi e strutture dati Analisi di algoritmi Funzioni di costo, notazione asintotica Alberto Montresor Università di Trento 2016/09/11 This work is licensed under a Creative Commons Attribution-ShareAlike

Dettagli

Algoritmi (9 CFU) (A.A )

Algoritmi (9 CFU) (A.A ) Algoritmi (9 CFU) (A.A. 2009-10) Equazioni di ricorrenza Prof. V. Cutello Algoritmi 1 Overview Definiamo cos è una ricorrenza Introduciamo 3 metodi per risolvere equazioni di ricorrenza Sostituzione e

Dettagli

Notazione asintotica. notazione Ω. notazione O. notazione o notazione ω. Marina Zanella Algoritmi e strutture dati Richiami matematici 1

Notazione asintotica. notazione Ω. notazione O. notazione o notazione ω. Marina Zanella Algoritmi e strutture dati Richiami matematici 1 Notazione asintotica Sebbene si possa talvolta determinare il tempo esatto di esecuzione di un algoritmo, l estrema precisione non giustifica lo sforzo del calcolo; infatti, per input sufficientemente

Dettagli

Gli algoritmi ricorsivi di ordinamento. Paolo Camurati Dip. Automatica e Informatica Politecnico di Torino

Gli algoritmi ricorsivi di ordinamento. Paolo Camurati Dip. Automatica e Informatica Politecnico di Torino ordinamento Paolo Camurati Dip. Automatica e Informatica Politecnico di Torino Merge Sort Ricorsivo, divide et impera Stabile Divisione: due sottovettori SX e DX rispetto al centro del vettore. p r A.A.

Dettagli

Esercizi per il corso di Algoritmi, anno accademico 2011/12

Esercizi per il corso di Algoritmi, anno accademico 2011/12 Esercizi per il corso di Algoritmi, anno accademico 2011/12 Esercizi sulla Tecnica Divide et Impera N.B. Tutti gli algoritmi vanno scritti in pseudocodice (non in Java, nè in C++, etc. ). Di tutti gli

Dettagli

Algoritmi e strutture di dati 2

Algoritmi e strutture di dati 2 Algoritmi e strutture di dati 2 Paola Vocca Lezione 1: Divide et Impera 1 Paradigma del divide et impera Strutturato in tre fasi. Sia Π() istanza di dimensione di un problema computazionale Π (dove è immediato

Dettagli

Introduzione agli algoritmi Prova di esame del 19/9/2016 Prof.sse E. Fachini - R. Petreschi. Parte prima

Introduzione agli algoritmi Prova di esame del 19/9/2016 Prof.sse E. Fachini - R. Petreschi. Parte prima Introduzione agli algoritmi Prova di esame del 19/9/2016 Prof.sse E. Fachini - R. Petreschi Parte prima 1) Si dimostri il teorema sulla limitazione inferiore per il tempo asintotico di esecuzione nel caso

Dettagli

Definizioni di base. Algoritmo: procedura computazionale ben definita che prende valori in input e produce valori in output.

Definizioni di base. Algoritmo: procedura computazionale ben definita che prende valori in input e produce valori in output. ANALISI DELLA COMPLESSITÀ DEGLI ALGORITMI Definizioni di base Algoritmo: procedura computazionale ben definita che prende valori in input e produce valori in output. Un algoritmo è uno strumento per risolvere

Dettagli

Algoritmi e Strutture Dati

Algoritmi e Strutture Dati Algoritmi e Strutture Dati Capitolo 4 Ordinamento: Quicksort (*) e metodi di ordinamento lineari Punto della situazione Problema dell ordinamento: Lower bound (n log n) Upper bound O(n log n) Algoritmi

Dettagli

Esercizi per il corso di Algoritmi

Esercizi per il corso di Algoritmi 1 Esercizi per il corso di Algoritmi Esercizi sulle Notazioni Asintotiche 1. Esercizio: In ciascuno dei seguenti casi, indicare se f(n) = O(g(n)), o se f(n) = Ω(g(n)), oppure entrambi (nel cui caso occorre

Dettagli

Albero di Riscorsione

Albero di Riscorsione Albero di Riscorsione Albero di ricorsione Un albero di ricorsione è un modo di visualizzare cosa accade in un algoritmo divide et impera L etichetta della radice rappresenta il costo non ricorsivo della

Dettagli

Dipartimento di Elettronica, Informazione e Bioingegneria API 2013/4

Dipartimento di Elettronica, Informazione e Bioingegneria API 2013/4 Dipartimento di Elettronica, Informazione e Bioingegneria API 2013/4 Equazioni alle ricorrenze @ G. Gini 2013 divide et impera - ricorsione Esempio: ordinamento di array Dimensione dei sottoinsiemi n/2,n/2

Dettagli

Valutazione di progressioni geometriche

Valutazione di progressioni geometriche Universitá degli Studi di Salerno Corso di Introduzione agli Algoritmi e Strutture Dati Prof. Ugo Vaccaro Anno Acc. 2015/16 p. 1/22 Valutazione di progressioni geometriche Somme finite: Sia S n = n i=0

Dettagli

Crescita funzioni. 20 novembre Come possiamo confrontare le funzioni di costo che abbiamo ottenuto finora?

Crescita funzioni. 20 novembre Come possiamo confrontare le funzioni di costo che abbiamo ottenuto finora? Crescita funzioni 20 novembre 2006 1 Funzioni di costo Definizione 1 (Funzione di costo). Utilizziamo il termine funzione di costo per indicare una funzione f : N R dall insieme dei numeri naturali ai

Dettagli

Algoritmi e Strutture Dati

Algoritmi e Strutture Dati Algoritmi e Strutture Dati Modelli di calcolo e metodologie di analisi Domenico Fabio Savo 1 Notazione asintotica f(n) = tempo di esecuzione / occupazione di memoria di un algoritmo su input di dimensione

Dettagli

Algoritmi di Ordinamento

Algoritmi di Ordinamento Algoritmi di Ordinamento 1 Algoritmi di ordinamento Selection Sort Quick Sort Lower bound alla complessità degli algoritmi di ordinamento Statistiche di ordine 2 Selection Sort SelectionSort(dati[]) {

Dettagli

Algoritmi e Strutture Dati

Algoritmi e Strutture Dati Analisi asintotica e Ricorrenze Esercizi Maria Rita Di Berardini, Emanuela Merelli 1 1 Dipartimento di Matematica e Informatica Università di Camerino A.A. 2006/07 Notazioni O, Ω e Θ Parte I Notazioni

Dettagli

poiché f(n) max{f(n),g(n)}, e g(n) max{f(n),g(n)}, sommando termine a termine: Quindi possiamo concludere che f(n)+g(n) = Θ(max{f(n),g(n)})

poiché f(n) max{f(n),g(n)}, e g(n) max{f(n),g(n)}, sommando termine a termine: Quindi possiamo concludere che f(n)+g(n) = Θ(max{f(n),g(n)}) Sol Esercizio 1 Es. Notazione asintotica: 1. Si dimostri che f(n)+g(n) = Θ(max{f(n),g(n)}) sotto l ip. f(n),g(n) >0, a partire da un certo n 0. poiché f(n) max{f(n),g(n)}, e g(n) max{f(n),g(n)}, sommando

Dettagli

Università degli Studi di Camerino Laurea in Informatica Prima Prova Parziale del corso di Algoritmi e Strutture Dati

Università degli Studi di Camerino Laurea in Informatica Prima Prova Parziale del corso di Algoritmi e Strutture Dati Università degli Studi di Camerino Laurea in Informatica Prima Prova Parziale del corso di Algoritmi e Strutture Dati Docente: Maria Rita Di Berardini 19 dicembre 2007 Nome: Cognome: N.Matricola: Note:

Dettagli

5. DIVIDE AND CONQUER I

5. DIVIDE AND CONQUER I Divide-et-Impera (Divide and conquer) 5. DIVIDE AND CONQUER I Mergesort e Relazioni di ricorrenza Esempi di progettazione D&I Moltiplicazione di interi Contare inversioni Divide-et-Impera. Definizione

Dettagli

Esercizi su alberi binari

Esercizi su alberi binari Esercizi su alberi binari Esercizi svolti: Determinazione nodi contenti verifica completezza verifica quasi completezza lunghezza del cammino interno determinazione ultima foglia in un quasi completo verifica

Dettagli

Mergesort. Mergesort. Mergesort. Mergesort. L idea è la seguente: (par. 13.4) dividere l insieme in due parti uguali di n/2 componenti

Mergesort. Mergesort. Mergesort. Mergesort. L idea è la seguente: (par. 13.4) dividere l insieme in due parti uguali di n/2 componenti L idea è la seguente: (par. 13.4) dividere l insieme in due parti uguali di n/2 componenti n/2 n/2 se fossero già ordinate le potremmo riunire con un algoritmo di fusione (merge) Esempio. Consideriamo

Dettagli

Algoritmi e Strutture Dati

Algoritmi e Strutture Dati Analisi Asintotica Maria Rita Di Berardini, Emanuela Merelli 1 1 Dipartimento di Matematica e Informatica Università di Camerino Un graduale processo di astrazione Passo 1: abbiamo ignorato il costo effettivo

Dettagli

Dati e Algoritmi I (Pietracaprina) Esercizi sulle Nozioni di Base

Dati e Algoritmi I (Pietracaprina) Esercizi sulle Nozioni di Base Dati e Algoritmi I (Pietracaprina) Esercizi sulle Nozioni di Base Dati e Algoritmi I (Pietracaprina): Esercizi 1 Problema 1. Sia T una stringa arbitraria di lunghezza n 1 su un alfabeto Σ. È sempre possibile

Dettagli

Schema generale di un algoritmo divide-et-impera. Algoritmi e Laboratorio a.a Lezioni. Esempio: mergesort su array. Esempio: quicksort

Schema generale di un algoritmo divide-et-impera. Algoritmi e Laboratorio a.a Lezioni. Esempio: mergesort su array. Esempio: quicksort Schema generale di un algoritmo divide-et-impera Università di Torino Facoltà di Scienze MFN Corso di Studi in Informatica Curriculum SR (Sistemi e Reti) Algoritmi e Laboratorio a.a. 2006-07 Lezioni prof.

Dettagli

Ricerca. Per ricerca si intende il procedimento di localizzazione di una particolare informazione in un elenco di dati.

Ricerca. Per ricerca si intende il procedimento di localizzazione di una particolare informazione in un elenco di dati. Ricerca Per ricerca si intende il procedimento di localizzazione di una particolare informazione in un elenco di dati. Il problema della ricerca in termini generali : dato un insieme D = {a 1,a 2,...,a

Dettagli

Algoritmi e Strutture Dati

Algoritmi e Strutture Dati Algoritmi e Strutture Dati Capitolo 4 Ordinamento: Quicksort (*) e metodi di ordinamento lineari Punto della situazione Problema dell ordinamento: Lower bound (n log n) Upper bound O(n log n) Algoritmi

Dettagli

Ordinamento per inserzione e per fusione

Ordinamento per inserzione e per fusione Ordinamento per inserzione e per fusione Alessio Orlandi 15 marzo 2010 Fusione: problema Problema Siano A e B due array di n A e n B interi rispettivamente. Si supponga che A e B siano ordinati in modo

Dettagli

Introduzione agli Algoritmi Appello esame del 2 luglio 2015 Prof. Emanuela Fachini (canale 1) e Prof. Irene Finocchi (canale 2) Parte 1

Introduzione agli Algoritmi Appello esame del 2 luglio 2015 Prof. Emanuela Fachini (canale 1) e Prof. Irene Finocchi (canale 2) Parte 1 Parte 1 Le risposte non motivate non saranno prese in considerazione. Negli esercizi di progettazione, prima di passare allo pseudocodice descrivete l'idea algoritmica soggiacente. Per tutti gli algoritmi

Dettagli

Quicksort Moltiplicazione di interi Master Theorem Valutazione del tempo di esecuzione di algoritmi iterativi e ricorsivi

Quicksort Moltiplicazione di interi Master Theorem Valutazione del tempo di esecuzione di algoritmi iterativi e ricorsivi Quicksort Moltiplicazione di interi Master Theorem Valutazione del tempo di esecuzione di algoritmi iterativi e ricorsivi Algoritmi basati sulla tecnica Divide et Impera In questo corso: Ricerca binaria

Dettagli

ESERCITAZIONI DI INTRODUZIONE AGLI ALGORITMI (A.A. 08/09)

ESERCITAZIONI DI INTRODUZIONE AGLI ALGORITMI (A.A. 08/09) ESERCITAZIONI DI INTRODUZIONE AGLI ALGORITMI (A.A. 08/09) DISPENSA N. 4 1. Ricerca Binaria Ricorsiva L algoritmo Ricerca Binaria risolve il problema della ricerca di una chiave in un vettore. È un esempio

Dettagli

Moltiplicazione veloce di interi

Moltiplicazione veloce di interi Moltiplicazione veloce di interi Ogni numero intero w di n cifre può essere scritto come 10 n/2 w s + w d w s indica il numero formato dalle n/2 cifre più significative di w w d denota il numero formato

Dettagli

Appunti lezione Capitolo 2 Analisi delle funzioni di costo

Appunti lezione Capitolo 2 Analisi delle funzioni di costo Appunti lezione Capitolo Analisi delle funzioni di costo Alberto Montresor 0 Settembre, 016 1 Funzioni di costo Definizione 1 (Funzione di costo). Utilizziamo il termine funzione di costo per indicare

Dettagli

Algoritmo di ordinamento sul posto che ha tempo di esecuzione :

Algoritmo di ordinamento sul posto che ha tempo di esecuzione : QuickSort Algoritmo di ordinamento sul posto che ha tempo di esecuzione : - O(n 2 ) nel caso peggiore - O(n log n) nel caso medio Nonostante le cattive prestazioni nel caso peggiore, rimane il miglior

Dettagli

INFORMATICA GENERALE

INFORMATICA GENERALE CAROSELLI STEFANO INFORMATICA GENERALE TESINA «LA TECNICA DEL DIVIDE-ET-IMPERA E DUE SUE IMPORTANTI APPLICAZIONI: IL QUICK SORT E IL MERGE SORT» La tecnica del DIVIDE-ET-IMPERA è un metodo di risoluzione

Dettagli

Ricerca di Massimo e Minimo di un Array

Ricerca di Massimo e Minimo di un Array Universitá degli Studi di Salerno Corso di Introduzione agli Algoritmi e Strutture Dati Prof. Ugo Vaccaro Anno Acc. 2014/15 p. 1/18 Ricerca di Massimo e Minimo di un Array Problema. Trova l elemento di

Dettagli

In questa lezione. Heap binario heapsort. [CLRS10] cap. 6, par Prof. E. Fachini - Intr. Alg.

In questa lezione. Heap binario heapsort. [CLRS10] cap. 6, par Prof. E. Fachini - Intr. Alg. In questa lezione Heap binario heapsort [CLRS10] cap. 6, par. 6.1-6.4!1 Heap binari Un heap binario è una struttura dati consistente di un array visto come un albero binario. A= 5 60 65 30 50 18 40 25

Dettagli

Algoritmi e Strutture Dati

Algoritmi e Strutture Dati Algoritmi e Strutture Dati Capitolo 1 Un introduzione informale agli algoritmi Camil Demetrescu, Irene Finocchi, Giuseppe F. Italiano Definizione informale di algoritmo Insieme di istruzioni, definite

Dettagli

Camil Demetrescu, Irene Finocchi, Giuseppe F. Italiano. Usa la tecnica del divide et impera:

Camil Demetrescu, Irene Finocchi, Giuseppe F. Italiano. Usa la tecnica del divide et impera: MergeSort Usa la tecnica del divide et impera: 1 Divide: dividi l array a metà 2 Risolvi i due sottoproblemi ricorsivamente 3 Impera: fondi le due sottosequenze ordinate 1 Esempio di esecuzione 7 2 4 5

Dettagli

Algoritmi e strutture dati

Algoritmi e strutture dati Algoritmi e Strutture Dati Capitolo 4 Ordinamento Ordinamento Dato un insieme S di n oggetti presi da un dominio totalmente ordinato, ordinare S Esempi: ordinare alfabeticamente lista di nomi, o insieme

Dettagli

Dati e Algoritmi I (Pietracaprina) Esercizi sulle Nozioni di Base

Dati e Algoritmi I (Pietracaprina) Esercizi sulle Nozioni di Base Dati e Algoritmi I (Pietracaprina) Esercizi sulle Nozioni di Base Dati e Algoritmi I (Pietracaprina): Esercizi 1 Problema 1. Sia T una stringa arbitraria di lunghezza n 1 su un alfabeto Σ. È sempre possibile

Dettagli

Algoritmi e Strutture Dati

Algoritmi e Strutture Dati Elementi di Programmazione Dinamica Maria Rita Di Berardini, Emanuela Merelli 1 1 Dipartimento di Matematica e Informatica Università di Camerino Tecniche di Programmazione Tecniche di progettazione e

Dettagli

2. Analisi degli Algoritmi

2. Analisi degli Algoritmi 2. Analisi degli Algoritmi Introduzione 2.1 Un modello di macchina elementare: la Macchina a Registri 2.2 Costo di esecuzione di un programma 2.3 Analisi del costo di esecuzione: il modello a costi uniformi

Dettagli

Algoritmi e Strutture Dati

Algoritmi e Strutture Dati Analisi di algoritmi Maria Rita Di Berardini 2, Emanuela Merelli 1 1 Dipartimento di Matematica e Informatica Università di Camerino 2 Polo di Scienze Università di Camerino ad Ascoli Piceno Parte I Analisi

Dettagli

Esercizi di Algoritmi e Strutture Dati

Esercizi di Algoritmi e Strutture Dati Esercizi di Algoritmi e Strutture Dati Moreno Marzolla http://www.moreno.marzolla.name/ Ultima Modifica: 7 ottobre 202 Copyright Portions of this work are Copyright 202, Moreno Marzolla. This work is licensed

Dettagli

Algoritmi e Strutture Dati. Capitolo 1 Un introduzione informale agli algoritmi

Algoritmi e Strutture Dati. Capitolo 1 Un introduzione informale agli algoritmi Algoritmi e Strutture Dati Capitolo Un introduzione informale agli algoritmi Ancora un esempio di problema e soluzioni algoritmiche: i numeri di Fibonacci verso un modello di calcolo più simile a un computer

Dettagli

Algoritmi e Strutture di Dati I 1. Algoritmi e Strutture di Dati I Massimo Franceschet francesc

Algoritmi e Strutture di Dati I 1. Algoritmi e Strutture di Dati I Massimo Franceschet   francesc Algoritmi e Strutture di Dati I 1 Algoritmi e Strutture di Dati I Massimo Franceschet http://www.sci.unich.it/ francesc m.franceschet@unich.it Algoritmi e Strutture di Dati I 2 Problema dell ordinamento

Dettagli

Algoritmi e Principi dell Informatica

Algoritmi e Principi dell Informatica Algoritmi e Principi dell Informatica Appello del 21 Febbraio 2013 Chi deve sostenere l esame integrato (API) deve svolgere tutti gli esercizi in 3 ore. Chi deve sostenere solo il modulo di Informatica

Dettagli

COMPLESSITÀ COMPUTAZIONALE DEGLI ALGORITMI

COMPLESSITÀ COMPUTAZIONALE DEGLI ALGORITMI COMPLESSITÀ COMPUTAZIONALE DEGLI ALGORITMI Fondamenti di Informatica a.a.200.2005/06 Prof. V.L. Plantamura Dott.ssa A. Angelini Ω (grande omega) Diciamo che T(n) = Ω (f(n)), - leggiamo T(n) ha complessità

Dettagli

Quick Sort. PARTITION(A,p,r) risistema il sottoarray A[p...r] e riporta l indice q:

Quick Sort. PARTITION(A,p,r) risistema il sottoarray A[p...r] e riporta l indice q: Quick Sort - Ordinamento in loco - Tempo di esecuzione nel caso peggiore: Θ(n 2 ) - Tempo di esecuzione nel caso medio: Θ(n lg n) - I fattori costanti nascosti nella notazione Θ sono abbastanza piccoli

Dettagli

Di cosa parliamo oggi?

Di cosa parliamo oggi? Universitá degli Studi di Salerno Corso di Algoritmi Prof. Ugo Vaccaro Anno Acc. 2014/15 p. 1/41 Di cosa parliamo oggi? Oggi parliamo di Analisi di Algoritmi Analisi di Algoritmi = valutazione delle risorse

Dettagli

5) Equazioni di ricorrenza

5) Equazioni di ricorrenza Pag 37 5) Equazioni di ricorrenza Valutare la complessità di un algoritmo ricorsivo è, in genere, più laborioso che nel caso degli algoritmi iterativi. Infatti, la natura ricorsiva della soluzione algoritmica

Dettagli

Casi di prova. Il problema dell ordinamento. Casi di prova. Casi di prova. Casi di prova

Casi di prova. Il problema dell ordinamento. Casi di prova. Casi di prova. Casi di prova Casi di prova Casi di prova Quando si vuole testare un algoritmo si devono costruire vari casi di prova. Invece di eseguire il programma più volte si può costruire un file di dati contenente tutti i casi

Dettagli

Selezione per distribuzione

Selezione per distribuzione Selezione per distribuzione Problema: selezione dell elemento con rango r in un array a di n elementi distinti. Si vuole evitare di ordinare a NB: Il problema diventa quello di trovare il minimo quando

Dettagli

Informatica II. Capitolo 2 Analisi di algoritmi. Valutare la complessità in tempo. Complessità in tempo: cosa serve?

Informatica II. Capitolo 2 Analisi di algoritmi. Valutare la complessità in tempo. Complessità in tempo: cosa serve? Valutare la complessità in tempo Complessità in tempo: cosa serve? Informatica II Capitolo 2 Analisi di algoritmi Per stimare il tempo impiegato da un programma Per stimare il più grande input gestibile

Dettagli

Divide et impera. Divide et impera. Divide et impera. Divide et impera

Divide et impera. Divide et impera. Divide et impera. Divide et impera Divide et impera Divide et impera La tecnica detta divide et impera è una strategia generale per impostare algoritmi (par. 9.4). Consideriamo un problema P e sia n la dimensione dei dati, la strategia

Dettagli

Esercizi riguardanti limiti di successioni e di funzioni

Esercizi riguardanti limiti di successioni e di funzioni Esercizi riguardanti iti di successioni e di funzioni Davide Boscaini Queste sono le note da cui ho tratto le esercitazioni del giorno 0 Novembre 20. Come tali sono ben lungi dall essere esenti da errori,

Dettagli

A.A CORSO DI ALGEBRA 1. PROFF. P. PIAZZA, E. SPINELLI. SOLUZIONE ESERCIZI FOGLIO 5.

A.A CORSO DI ALGEBRA 1. PROFF. P. PIAZZA, E. SPINELLI. SOLUZIONE ESERCIZI FOGLIO 5. A.A. 2015-2016. CORSO DI ALGEBRA 1. PROFF. P. PIAZZA, E. SPINELLI. SOLUZIONE ESERCIZI FOGLIO 5. Esercizio 5.1. Determinare le ultime tre cifre di n = 13 1625. (Suggerimento. Sfruttare il Teorema di Eulero-Fermat)

Dettagli

Algoritmi e Strutture Dati & Laboratorio di Algoritmi e Programmazione

Algoritmi e Strutture Dati & Laboratorio di Algoritmi e Programmazione Algoritmi e Strutture Dati & Laboratorio di Algoritmi e Programmazione Appello del 24 Gennaio 2007 Esercizio 1 (ASD) 1. Sia T (n) = T (n/6) + T (n/3) + Θ(n). Considerare ciascuna delle seguenti affermazioni

Dettagli

Si può fare di meglio?

Si può fare di meglio? Si può fare di meglio? Gli algoritmi visti fino ad ora hanno costo O(n 2 ) È possibile fare di meglio? Quanto meglio? Algoritmi e Strutture Dati 1 Algoritmi divide et impera Idea generale Divide: Scomporre

Dettagli

Tempo e spazio di calcolo (continua)

Tempo e spazio di calcolo (continua) Tempo e spazio di calcolo (continua) I numeri di Fibonacci come case study (applichiamo ad un esempio completo le tecniche illustrate nei lucidi precedenti) Abbiamo introdotto tecniche per la correttezza

Dettagli

Algoritmi e Strutture di Dati

Algoritmi e Strutture di Dati Algoritmi e Strutture di Dati Complessità dei problemi m.patrignani Nota di copyright queste slides so protette dalle leggi sul copyright il titolo ed il copyright relativi alle slides (inclusi, ma n limitatamente,

Dettagli

Analisi Matematica I per Ingegneria Gestionale, a.a Scritto del secondo appello, 1 febbraio 2017 Testi 1

Analisi Matematica I per Ingegneria Gestionale, a.a Scritto del secondo appello, 1 febbraio 2017 Testi 1 Analisi Matematica I per Ingegneria Gestionale, a.a. 206-7 Scritto del secondo appello, febbraio 207 Testi Prima parte, gruppo.. Trovare le [0, π] che risolvono la disequazione sin(2) 2. 2. Dire se esistono

Dettagli

La ricorsione. Sommario. Fulvio CORNO - Matteo SONZA REORDA Dip. Automatica e Informatica Politecnico di Torino

La ricorsione. Sommario. Fulvio CORNO - Matteo SONZA REORDA Dip. Automatica e Informatica Politecnico di Torino La ricorsione Fulvio CORNO - Matteo SONZA REORDA Dip. Automatica e Informatica Politecnico di Torino Sommario! Definizione di ricorsione e strategie divide et impera! Semplici algoritmi ricorsivi! Merge

Dettagli

Esercizi sulla complessità di frammenti di pseudo-codice

Esercizi sulla complessità di frammenti di pseudo-codice Esercizi sulla complessità di frammenti di pseudo-codice Esercizio 1 Si determini la complessità temporale del seguente frammento di pseudo-codice in funzione di n. Il ciclo contiene solo istruzioni elementari;

Dettagli

Morale della lezione scorsa

Morale della lezione scorsa Universitá degli Studi di Salerno Corso di Algoritmi Prof. Ugo Vaccaro Anno Acc. 2014/15 p. 1/38 Morale della lezione scorsa Abbiamo introdotto un algoritmo (Quicksort) che ha tempo di esecuzione Θ(n 2

Dettagli

Tempo e spazio di calcolo (continua)

Tempo e spazio di calcolo (continua) Tempo e spazio di calcolo (continua) I numeri di Fibonacci come case study (applichiamo ad un esempio completo le tecniche illustrate nei lucidi precedenti) Abbiamo introdotto tecniche per la correttezza

Dettagli

Elezione di un leader in una rete ad anello

Elezione di un leader in una rete ad anello Elezione di un leader in una rete ad anello Corso di Algoritmi Distribuiti Prof. Roberto De Prisco Lezione n a cura di Rosanna Cassino e Sergio Di Martino Introduzione In questa lezione viene presentato

Dettagli

Lezione 4 Ugo Vaccaro

Lezione 4 Ugo Vaccaro Progettazione di Algoritmi Anno Accademico 2017 2018 Lezione 4 Ugo Vaccaro Introduciamo ora la notazione Ω, che ci sarà utile quando vorremo valutare limitazioni inferiori al tempo di esecuzione di algoritmi

Dettagli

Problemi di ricerca in insiemi ordinati

Problemi di ricerca in insiemi ordinati Problemi di ricerca in insiemi ordinati Abbiamo visto che, per trovare un elemento in un insieme ordinato, con l algoritmo della ricerca binaria restringiamo l intervallo della ricerca alla metà in ogni

Dettagli

Analisi Matematica I per Ingegneria Gestionale, a.a Scritto del terzo appello, 19 febbraio 2018 Testi 1

Analisi Matematica I per Ingegneria Gestionale, a.a Scritto del terzo appello, 19 febbraio 2018 Testi 1 Scritto del terzo appello, 9 febbraio 208 Testi Prima parte, gruppo.. Per ciascuno dei seguenti punti dare le coordinate (polari o cartesiane) che mancano: a) = 0, = ; r = α = b) = 3, = 3; r = α = c) r

Dettagli

Esercizi di Algoritmi e Strutture Dati

Esercizi di Algoritmi e Strutture Dati Esercizi di Algoritmi e Strutture Dati Moreno Marzolla marzolla@cs.unibo.it Ultimo aggiornamento: 3 novembre 2010 1 Trova la somma/1 Scrivere un algoritmo che dati in input un array A[1... n] di n interi

Dettagli

COGNOME E NOME (IN STAMPATELLO) MATRICOLA

COGNOME E NOME (IN STAMPATELLO) MATRICOLA Politecnico di Milano Facoltà di Ingegneria dell Informazione Informatica 3 Proff. Campi, Ghezzi, Matera e Morzenti Appello del 14 Settembre 2006 Recupero II Parte COGNOME E NOME (IN STAMPATELLO) MATRICOLA

Dettagli

In questa lezione. Alberi binari: [CLRS09] cap. 12 per la visita inorder. visite e esercizi su alberi binari. Prof. E. Fachini - Intr. Alg.

In questa lezione. Alberi binari: [CLRS09] cap. 12 per la visita inorder. visite e esercizi su alberi binari. Prof. E. Fachini - Intr. Alg. In questa lezione Alberi binari: visite e esercizi su alberi binari [CLRS09] cap. 12 per la visita inorder!1 Visita inordine di un albero binario visita inordine(x) se l albero x non è nullo allora visita

Dettagli

Esercizi Capitolo 10 - Code con priorità e insiemi disgiunti

Esercizi Capitolo 10 - Code con priorità e insiemi disgiunti Esercizi Capitolo 10 - Code con priorità e insiemi disgiunti Alberto Montresor 19 Agosto, 2014 Alcuni degli esercizi che seguono sono associati alle rispettive soluzioni. Se il vostro lettore PDF lo consente,

Dettagli

Esercizi per il corso Matematica clea

Esercizi per il corso Matematica clea Esercizi per il corso Matematica clea Daniele Ritelli anno accademico 008/009 Lezione : Numeri naturali e principio di induzione Esercizi svolti. Provare che + + + n. Provare che + + + n n(n + ) n(n +

Dettagli

Informatica Generale Andrea Corradini Algoritmi: ordinamento per inserimento e ricorsione

Informatica Generale Andrea Corradini Algoritmi: ordinamento per inserimento e ricorsione Informatica Generale Andrea Corradini 14 - Algoritmi: ordinamento per inserimento e ricorsione Sommario Un algoritmo iterativo: l'ordinamento per inserimento (insertion sort) La ricorsione: i numeri triangolari

Dettagli

Algoritmi e Strutture Dati

Algoritmi e Strutture Dati Algoritmi e Strutture Dati Informazioni sul corso + Un introduzione informale agli algoritmi Domenico Fabio Savo 1 Domenico Fabio Savo Email: savo@dis.uniroma1.it Web: http://www.dis.uniroma1.it/~savo

Dettagli

Tecniche Algoritmiche/1 Divide et Impera

Tecniche Algoritmiche/1 Divide et Impera Tecniche Algoritmiche/1 Divide et Impera Ivan Lanese Dipartimento di Informatica Scienza e Ingegneria Università di Bologna Ivan.lanese@gmail.com http://www.cs.unibo.it/~lanese/ Divide-et-impera 2 Tecniche

Dettagli

Esercizi Capitolo 10 - Code con priorità e insiemi disgiunti

Esercizi Capitolo 10 - Code con priorità e insiemi disgiunti Esercizi Capitolo 10 - Code con priorità e insiemi disgiunti Alberto Montresor 27 marzo 2012 Alcuni degli esercizi che seguono sono associati alle rispettive soluzioni. Se il vostro lettore PDF lo consente,

Dettagli

Analisi degli algoritmi. Progettazione di Algoritmi a.a Matricole congrue a 1 Docente: Annalisa De Bonis

Analisi degli algoritmi. Progettazione di Algoritmi a.a Matricole congrue a 1 Docente: Annalisa De Bonis Analisi degli algoritmi Progettazione di Algoritmi a.a. 2015-16 Matricole congrue a 1 Docente: Annalisa De Bonis Efficienza degli algoritmi Proviamo a definire la nozione di efficienza: Un algoritmo è

Dettagli

Algoritmi e Strutture Dati

Algoritmi e Strutture Dati Algoritmi di Ordinamento Maria Rita Di Berardini, Emanuela Merelli 1 1 Dipartimento di Matematica e Informatica Università di Camerino Il problema dell ordinamento Il problema dell ordinamento di un insieme

Dettagli

Soluzioni di alcuni esercizi degli esoneri e di due esercizi dei fogli di esercizi. 1 2 n + 5 n 10 n n + 1.

Soluzioni di alcuni esercizi degli esoneri e di due esercizi dei fogli di esercizi. 1 2 n + 5 n 10 n n + 1. Soluzioni di alcuni esercizi degli esoneri e di due esercizi dei fogli di esercizi NOTA: PER FARE PIÚ ALLA SVELTA NON HO SCRITTO TUTTI I DETTAGLI DELLE SOLUZIONI. HO CERCATO DI SPIEGARE LE IDEE PRINCIPALI.

Dettagli

Diverse politiche. La ricorsione PROGRAMMAZIONE TOP-DOWN ESEMPIO. Bottom-Up. Di solito è meglio alternare le due tecniche

Diverse politiche. La ricorsione PROGRAMMAZIONE TOP-DOWN ESEMPIO. Bottom-Up. Di solito è meglio alternare le due tecniche La ricorsione Top-Down Diverse politiche Si parte dal problema generale Poi si sce nei particolari (moduli, funzioni, ecc ) Bottom-Up Si creano prima i moduli e le funzioni base Poi si assemblano nel programma

Dettagli

Proprietà delle notazioni asintotiche

Proprietà delle notazioni asintotiche Proprietà delle notazioni asintotiche Punto della situazione Cos è un algoritmo Tempo di esecuzione T(n) Analisi di algoritmi: analisi asintotica di T(n) Notazioni asintotiche Argomento di oggi Proprietà

Dettagli