SlideShare une entreprise Scribd logo
1  sur  9
Télécharger pour lire hors ligne
http://codemooc.org/algoritmi/
Algo 05.01
La complessità
computazionale
alessandro bogliolo
Algo 05.01
alessandro.bogliolo@uniurb.it
Ilquadrato
Algo 05.01
alessandro.bogliolo@uniurb.it
Codice
etracciadiesecuzione
La traccia di esecuzione è la sequenza delle istruzioni effettivamente eseguite.
Di solito non coincide con il codice poiché le ripetizioni, le condizioni e le chiamate a
procedure o funzioni lo rendono non lineare.
Algo 05.01
alessandro.bogliolo@uniurb.it
Efficienzaecomplessità
Contiamoipassielementari
4*(controlloCiclo + 2*(controlloCiclo + moveForward) + turnRight)
4*controlloCiclo + 8*controlloCiclo + 8*moveForward + 4*turnRight
Algo 05.01
alessandro.bogliolo@uniurb.it
Eseipassi
dipendonodaidati?
Assegnamento+B(For+A(For+Incremento))
Assegnamento+B*For + B*A(For+Incremento)
1+B*1+B*A*2
Il computo dei passi eseguiti è dominato dal termine
A*B
Algo 05.01
alessandro.bogliolo@uniurb.it
Eseipassi
dipendonodaidati?
Assegnamento+A(For+Incremento)+B(For+Incremento)
Assegnamento+(A+B)(For+Incremento)
1+(A+B)*2
Il computo dei passi eseguiti è dominato dal termine
A+B
Algo 05.01
alessandro.bogliolo@uniurb.it
Eseipassi
dipendonodaidati?
Calcolo di N!, che si legge N fattoriale. Prodotto dei primi
N numeri interi
Il ciclo invoca N volte la funzione moltiplica per calcolare:
• La prima volta: 1*1
• La seconda volta: 1*2
• La terza volta: 2*3
• La quarta volta: 6*4
• …
• L’ultima volta: (N-1)!*N
Per il generico valore di i, si moltiplica i per il valore
di fact già calcolato, che vale (i-1)!
Se l’unica istruzione elementare di cui disponiamo è
l’incremento unitario, il numero di passi complessivi è pari a
1*1 + 1*2 + 2*3 + 6*4 + … + (N-1)!*N
Come dire:
1! + 2! + 3! + 4! + 5! + … + N!
Dominato da
(N+1)!
Algo 05.01
alessandro.bogliolo@uniurb.it
Regoleperilcalcolo
dellacomplessità1. Il numero di ripetizioni di
cicli nidificati si moltiplica 3. Procedure e funzioni
incapsulano il codice, ma non
ne nascondono la complessità
2. Il numero di ripetizioni di
cicli consecutivi si somma
Algo 05.01
alessandro.bogliolo@uniurb.it
Qualipassi
sonodavveroelementari? Addizione e moltiplicazione
possono essere considerate
istruzioni elementari solo se:
1. il loro tempo di esecuzione
può essere ritenuto costante
indipendentemente dal
valore degli operandi
2. l’esecutore le conosce senza
bisogno di descriverle in
termini di passi più semplici
Nei calcolatori questo è vero finché i
numeri non superano le dimensioni
della rappresentazione adottata da
chi li ha progettati

Contenu connexe

Similaire à AlgoMOOC 05.01. La complessità computazionale

Deep diving C# 4 (Raffaele Rialdi)
Deep diving C# 4 (Raffaele Rialdi)Deep diving C# 4 (Raffaele Rialdi)
Deep diving C# 4 (Raffaele Rialdi)
DotNetMarche
 
[Ebook ita - security] introduzione alle tecniche di exploit - mori - ifoa ...
[Ebook   ita - security] introduzione alle tecniche di exploit - mori - ifoa ...[Ebook   ita - security] introduzione alle tecniche di exploit - mori - ifoa ...
[Ebook ita - security] introduzione alle tecniche di exploit - mori - ifoa ...
UltraUploader
 

Similaire à AlgoMOOC 05.01. La complessità computazionale (9)

OrientDB & Big Data
OrientDB & Big DataOrientDB & Big Data
OrientDB & Big Data
 
Deep diving C# 4 (Raffaele Rialdi)
Deep diving C# 4 (Raffaele Rialdi)Deep diving C# 4 (Raffaele Rialdi)
Deep diving C# 4 (Raffaele Rialdi)
 
Siemens-S7-1200-PLC
Siemens-S7-1200-PLCSiemens-S7-1200-PLC
Siemens-S7-1200-PLC
 
Presentazione understand
Presentazione understandPresentazione understand
Presentazione understand
 
E6 Concorre
E6 ConcorreE6 Concorre
E6 Concorre
 
Mobile APPs con Objective-C (iOS 3.1+) - Day 01/02
Mobile APPs con Objective-C (iOS 3.1+) - Day 01/02Mobile APPs con Objective-C (iOS 3.1+) - Day 01/02
Mobile APPs con Objective-C (iOS 3.1+) - Day 01/02
 
Eccezioni in java
Eccezioni in javaEccezioni in java
Eccezioni in java
 
[Ebook ita - security] introduzione alle tecniche di exploit - mori - ifoa ...
[Ebook   ita - security] introduzione alle tecniche di exploit - mori - ifoa ...[Ebook   ita - security] introduzione alle tecniche di exploit - mori - ifoa ...
[Ebook ita - security] introduzione alle tecniche di exploit - mori - ifoa ...
 
DHow2 - L1
DHow2 - L1DHow2 - L1
DHow2 - L1
 

Plus de Alessandro Bogliolo

Plus de Alessandro Bogliolo (20)

BIBMOOC 05.03 - Codici in biblioteca
BIBMOOC 05.03 - Codici in bibliotecaBIBMOOC 05.03 - Codici in biblioteca
BIBMOOC 05.03 - Codici in biblioteca
 
BIBMOOC 06.02 - Buone pratiche: Il caso di Settimo Torinese - Lisa Marcenaro ...
BIBMOOC 06.02 - Buone pratiche: Il caso di Settimo Torinese - Lisa Marcenaro ...BIBMOOC 06.02 - Buone pratiche: Il caso di Settimo Torinese - Lisa Marcenaro ...
BIBMOOC 06.02 - Buone pratiche: Il caso di Settimo Torinese - Lisa Marcenaro ...
 
BIBMOOC 5.2 - Algoritmi in biblioteca
BIBMOOC 5.2 - Algoritmi in bibliotecaBIBMOOC 5.2 - Algoritmi in biblioteca
BIBMOOC 5.2 - Algoritmi in biblioteca
 
BIBMOOC 05.01 - Installazioni di coding e gamification
BIBMOOC 05.01 - Installazioni di coding e gamificationBIBMOOC 05.01 - Installazioni di coding e gamification
BIBMOOC 05.01 - Installazioni di coding e gamification
 
BIBMOOC 06.01 - Buone pratiche: il caso di CSBNO - Giovanni Mojoli
BIBMOOC 06.01 - Buone pratiche: il caso di CSBNO - Giovanni MojoliBIBMOOC 06.01 - Buone pratiche: il caso di CSBNO - Giovanni Mojoli
BIBMOOC 06.01 - Buone pratiche: il caso di CSBNO - Giovanni Mojoli
 
Nuovi LIDI - Lezione 1
Nuovi LIDI - Lezione 1Nuovi LIDI - Lezione 1
Nuovi LIDI - Lezione 1
 
BIBMOOC 04.04 - Progettualità e opportunità di finanziamento - Simona Villa
BIBMOOC 04.04 - Progettualità e opportunità di finanziamento - Simona VillaBIBMOOC 04.04 - Progettualità e opportunità di finanziamento - Simona Villa
BIBMOOC 04.04 - Progettualità e opportunità di finanziamento - Simona Villa
 
BIBMOOC 04.03 - Progettare spazi per la cultura - Marco Muscogiuri
BIBMOOC 04.03 - Progettare spazi per la cultura - Marco MuscogiuriBIBMOOC 04.03 - Progettare spazi per la cultura - Marco Muscogiuri
BIBMOOC 04.03 - Progettare spazi per la cultura - Marco Muscogiuri
 
BIBMOOC 04.02 - Marketing culturale - Anna Busa
BIBMOOC 04.02 - Marketing culturale - Anna BusaBIBMOOC 04.02 - Marketing culturale - Anna Busa
BIBMOOC 04.02 - Marketing culturale - Anna Busa
 
BIBMOOC 3.2 - Coding unplugged fai-da-te
BIBMOOC 3.2 - Coding unplugged fai-da-teBIBMOOC 3.2 - Coding unplugged fai-da-te
BIBMOOC 3.2 - Coding unplugged fai-da-te
 
BIBMOOC 03.01 - Programmazione visuale a blocchi
BIBMOOC 03.01 - Programmazione visuale a blocchiBIBMOOC 03.01 - Programmazione visuale a blocchi
BIBMOOC 03.01 - Programmazione visuale a blocchi
 
BIBMOOC 02.01 - Esecutore ideale e istruzioni elementari
BIBMOOC 02.01 - Esecutore ideale e istruzioni elementariBIBMOOC 02.01 - Esecutore ideale e istruzioni elementari
BIBMOOC 02.01 - Esecutore ideale e istruzioni elementari
 
BIBMOOC 02.02 - Sequenze di istruzioni ripetizione e condizioni
BIBMOOC 02.02 - Sequenze di istruzioni ripetizione e condizioniBIBMOOC 02.02 - Sequenze di istruzioni ripetizione e condizioni
BIBMOOC 02.02 - Sequenze di istruzioni ripetizione e condizioni
 
BIBMOOC 01.03 - Le biblioteche e la loro funzione sociale - Chiara Faggiolani
BIBMOOC 01.03 - Le biblioteche e la loro funzione sociale - Chiara FaggiolaniBIBMOOC 01.03 - Le biblioteche e la loro funzione sociale - Chiara Faggiolani
BIBMOOC 01.03 - Le biblioteche e la loro funzione sociale - Chiara Faggiolani
 
BIBMOOC 1.2 - Coding e pensiero computazionale
BIBMOOC 1.2 - Coding e pensiero computazionaleBIBMOOC 1.2 - Coding e pensiero computazionale
BIBMOOC 1.2 - Coding e pensiero computazionale
 
BIBMOOC 1.1 - Informazione e rappresentazioni digitali
BIBMOOC 1.1 - Informazione e rappresentazioni digitaliBIBMOOC 1.1 - Informazione e rappresentazioni digitali
BIBMOOC 1.1 - Informazione e rappresentazioni digitali
 
CodyTrip a BTO2021
CodyTrip a BTO2021CodyTrip a BTO2021
CodyTrip a BTO2021
 
AIMOOC 7.3 - Per una IA etica - Claudia Chiavarino
AIMOOC 7.3 - Per una IA etica - Claudia ChiavarinoAIMOOC 7.3 - Per una IA etica - Claudia Chiavarino
AIMOOC 7.3 - Per una IA etica - Claudia Chiavarino
 
AIMOOC 7.2 - La strategia europea per l'I.A. - Lucilla Sioli
AIMOOC 7.2 - La strategia europea per l'I.A. - Lucilla SioliAIMOOC 7.2 - La strategia europea per l'I.A. - Lucilla Sioli
AIMOOC 7.2 - La strategia europea per l'I.A. - Lucilla Sioli
 
AIMOOC 5.5 - Programmazione o addestramento? - Alessandro Bogliolo
AIMOOC 5.5 - Programmazione o addestramento? - Alessandro BoglioloAIMOOC 5.5 - Programmazione o addestramento? - Alessandro Bogliolo
AIMOOC 5.5 - Programmazione o addestramento? - Alessandro Bogliolo
 

Dernier

case passive_GiorgiaDeAscaniis.pptx.....
case passive_GiorgiaDeAscaniis.pptx.....case passive_GiorgiaDeAscaniis.pptx.....
case passive_GiorgiaDeAscaniis.pptx.....
giorgiadeascaniis59
 
Scienza Potere Puntoaaaaaaaaaaaaaaa.pptx
Scienza Potere Puntoaaaaaaaaaaaaaaa.pptxScienza Potere Puntoaaaaaaaaaaaaaaa.pptx
Scienza Potere Puntoaaaaaaaaaaaaaaa.pptx
lorenzodemidio01
 
Nicola pisano aaaaaaaaaaaaaaaaaa(1).pptx
Nicola pisano aaaaaaaaaaaaaaaaaa(1).pptxNicola pisano aaaaaaaaaaaaaaaaaa(1).pptx
Nicola pisano aaaaaaaaaaaaaaaaaa(1).pptx
lorenzodemidio01
 

Dernier (19)

case passive_GiorgiaDeAscaniis.pptx.....
case passive_GiorgiaDeAscaniis.pptx.....case passive_GiorgiaDeAscaniis.pptx.....
case passive_GiorgiaDeAscaniis.pptx.....
 
Lorenzo D'Emidio_Vita di Cristoforo Colombo.pptx
Lorenzo D'Emidio_Vita di Cristoforo Colombo.pptxLorenzo D'Emidio_Vita di Cristoforo Colombo.pptx
Lorenzo D'Emidio_Vita di Cristoforo Colombo.pptx
 
Descrizione Piccolo teorema di Talete.pptx
Descrizione Piccolo teorema di Talete.pptxDescrizione Piccolo teorema di Talete.pptx
Descrizione Piccolo teorema di Talete.pptx
 
Tosone Christian_Steve Jobsaaaaaaaa.pptx
Tosone Christian_Steve Jobsaaaaaaaa.pptxTosone Christian_Steve Jobsaaaaaaaa.pptx
Tosone Christian_Steve Jobsaaaaaaaa.pptx
 
Presentazioni Efficaci e lezioni di Educazione Civica
Presentazioni Efficaci e lezioni di Educazione CivicaPresentazioni Efficaci e lezioni di Educazione Civica
Presentazioni Efficaci e lezioni di Educazione Civica
 
Scienza Potere Puntoaaaaaaaaaaaaaaa.pptx
Scienza Potere Puntoaaaaaaaaaaaaaaa.pptxScienza Potere Puntoaaaaaaaaaaaaaaa.pptx
Scienza Potere Puntoaaaaaaaaaaaaaaa.pptx
 
Nicola pisano aaaaaaaaaaaaaaaaaa(1).pptx
Nicola pisano aaaaaaaaaaaaaaaaaa(1).pptxNicola pisano aaaaaaaaaaaaaaaaaa(1).pptx
Nicola pisano aaaaaaaaaaaaaaaaaa(1).pptx
 
Aristotele, vita e opere e fisica...pptx
Aristotele, vita e opere e fisica...pptxAristotele, vita e opere e fisica...pptx
Aristotele, vita e opere e fisica...pptx
 
discorso generale sulla fisica e le discipline.pptx
discorso generale sulla fisica e le discipline.pptxdiscorso generale sulla fisica e le discipline.pptx
discorso generale sulla fisica e le discipline.pptx
 
Lorenzo D'Emidio_Francesco Petrarca.pptx
Lorenzo D'Emidio_Francesco Petrarca.pptxLorenzo D'Emidio_Francesco Petrarca.pptx
Lorenzo D'Emidio_Francesco Petrarca.pptx
 
ProgettoDiEducazioneCivicaDefinitivo_Christian Tosone.pptx
ProgettoDiEducazioneCivicaDefinitivo_Christian Tosone.pptxProgettoDiEducazioneCivicaDefinitivo_Christian Tosone.pptx
ProgettoDiEducazioneCivicaDefinitivo_Christian Tosone.pptx
 
descrizioni della antica civiltà dei sumeri.pptx
descrizioni della antica civiltà dei sumeri.pptxdescrizioni della antica civiltà dei sumeri.pptx
descrizioni della antica civiltà dei sumeri.pptx
 
LE ALGHE.pptx ..........................
LE ALGHE.pptx ..........................LE ALGHE.pptx ..........................
LE ALGHE.pptx ..........................
 
Vuoi girare il mondo? educazione civica.
Vuoi girare il mondo? educazione civica.Vuoi girare il mondo? educazione civica.
Vuoi girare il mondo? educazione civica.
 
Oppressi_oppressori.pptx................
Oppressi_oppressori.pptx................Oppressi_oppressori.pptx................
Oppressi_oppressori.pptx................
 
Lorenzo D'Emidio_Vita e opere di Aristotele.pptx
Lorenzo D'Emidio_Vita e opere di Aristotele.pptxLorenzo D'Emidio_Vita e opere di Aristotele.pptx
Lorenzo D'Emidio_Vita e opere di Aristotele.pptx
 
Quadrilateri e isometrie studente di liceo
Quadrilateri e isometrie studente di liceoQuadrilateri e isometrie studente di liceo
Quadrilateri e isometrie studente di liceo
 
Scrittura seo e scrittura accessibile
Scrittura seo e scrittura accessibileScrittura seo e scrittura accessibile
Scrittura seo e scrittura accessibile
 
Lorenzo D'Emidio- Lavoro sulla Bioarchittetura.pptx
Lorenzo D'Emidio- Lavoro sulla Bioarchittetura.pptxLorenzo D'Emidio- Lavoro sulla Bioarchittetura.pptx
Lorenzo D'Emidio- Lavoro sulla Bioarchittetura.pptx
 

AlgoMOOC 05.01. La complessità computazionale