Algoritmica & laboratorio
Indice
- Introduzione ............................................ pag 1
- Costo computazionale .................................... pag 5
- Divide et impera ........................................ pag 8
- Limiti inferiori ........................................ pag 9
- Analisi di complessità .................................. pag 18
- Ordinamento ............................................. pag 20
- Selezione ................................................ pag 20
- Coda ..................................................... pag 42
- Alberi binari ........................................... pag 44
- Dizionari ............................................... pag 47
- Programmazione dinamica .................................. pag 64
- Grafi .................................................... pag 72
- Teoria della calcolabilità .............................. pag 82
Algoritmica & laboratorio
Indice
- Introduzione ............................................... pag. 1
- Costo computazionale ................................ pag. 5
- Divide et impera ........................................... pag. 8
- Limiti inferiori ........................................... pag. 9
- Analisi di complessità .................................... pag. 18
- Ordinamento ................................................ pag. 20
- Selezione .................................................. pag. 20
- Costi ........................................................ pag. 42
- Alberi binari .............................................. pag. 44
- Dizionari .................................................. pag. 57
- Programmazione dinamica ......................... pag. 64
- Grafi ........................................................ pag. 72
- Teoria della calcolabilità .................................. pag. 82
1. Introduzione
Cos'è un algoritmo? Un algoritmo è una sequenza di istruzioni che risolvendo un problema porta alla sua soluzione. Usiamo algoritmi tutti i giorni per risolvere qualsiasi tipo di esempio di calcolo. Le data, appunto, da questi algoritmi decidendo comprendere che secondario già vissuto di pazienza e delle operazioni e che richiedono sempre migliori algoritmi altre scientifiche anche situazioni cose più efficienti dirette, cioè che risolvano il problema in tanto stesso caso costo tempo per rispetto ad altri. Specificare/individuare progetto un algoritmo significa scrivere il passaggio all'hardware per software che consiglio ci renderà ben soluzione problematico modo univo poter possibile. La fondamentale strada un progetti ufficiale che cosa quei definendo progetti dice per poi algoritmo attraverso svolgendo traduzione proprio quale serve o fino i biquadreuda e caratteristiche di efficienti e possano classifica operazioni. Gli algoritmi seguita da che in questo caso media volta unifica.
1.1 Problema delle dodici monete
Per iniziare facciamo un esempio di progettazione di un algoritmo ufficiale. Si hanno dodici monete e una bilancia a due piatti. Sappiamo che tra le dodici monete, può esserne al massimo una falsa e se c'è può essere più leggera o più pesante delle altre che sono tutte di egual peso. Per determinare se c’è la moneta falsa possiamo fare al massimo tre pesate. Per iniziare bisogna chiedersi se sia possibile risolvere il problema in tre pesate. Dato che le possibilità esistenti per ciascun pesante sono 3 per 3 pesate possibile esaminare 33 casi cioè 27 visto che escludo le soluzioni e sono possibilità che tre pesate coprono il range. L = leggera P = pesante. Visto che sappiamo che tale soluzione è possibile, ora cerchiamo l'algoritmo che ce la fornisce.
- Pesando 1 moneta per piatto abbiamo: 1,2 1<2 1=2 >1o caso da discriminare ma 35 = 9 > 21 quindi non potremmo risolvere il caso centrale con altre 2 pesate.
- Pesando 2 monete per piatto: 1,2 - 3,4 1,2 < 3,4 # 1,2 = 3,4 >1o caso da discriminare sorge lo stesso problema di prima.
- Pesando 3 monete per piatto: 1,2,3 - 4,5,6 1,2,3 < 4,5,6 # 1,2,3 = 4,5,6 >13 caso da discriminare quindi come prima.
- Pesando 4 monete per piatto: 1,2,3,4 - 5,6,7,8 1,2,3,4 < 5,6,7,8 # 1,2,3,4 = 5,6,7,8 >9 casi da discriminare quindi questa soluzione è possibile.
1.2 Moltiplicazione Egizia
Un altro esempio di algoritmo che proponiamo è quello di un papiro d
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
-
Algoritmica
-
Appunti Algoritmica
-
Appunti di Programmazione e algoritmica
-
Riassunto esame Algoritmica, prof. Romani, libro consigliato Elementi di Algoritmica di Francesco Romani