Complessità: fattoriale

Vedi esercizio numero 12 di pagina 202 del libro di testo Vedi gli algoritmi risolutivi Versione iterativa T(n) = = = = = Versione ricorsiva Prova per n=0, n=1, … T(0) = T(1) = T(2) = = 9 T(3) = = = 13 … Quindi La ricorsione sostituisce l’iterazione e non cambia significativamente il tempo … Leggi tutto

Complessità: i numeri di Fibonacci

Dopo aver analizzato il problema e individuati i 3 algoritmi discutiamo la loro complessità in tempo. Algoritmo ricorsivo Il tempo di attesa può essere considerato proporzionale al numero di chiamate ricorsive Il tempo di attesa è esponenziale, anche se con esponente n/2 piuttosto che n, quindi per n molto grande L’algoritmo ricorsivo per il calcolo … Leggi tutto

Funzioni

Quando il sottoprogramma B termina restituisce un risultato che occuperà logicamente lo spazio di codice della chiamata in A Il sottoprogramma chiamante A riceverà dal sottoprogramma chiamato B (la funzione) un dato, risultato dell’elaborazione, e potrà utilizzarlo come argomento di altre elaborazioni C… Pascal Python VisualBasic Note

Dal problema alla risposta – 2

Compilatore Tra il programma e l’esecutore, compaiono il file sorgente e il file oggetto. Il programmatore utilizza l’editor per scrivere il file sorgente il compilatore per tradurre da alto livello a basso livello e produrre il file oggetto. Il compilatore produce un file oggetto compatibile con una certa piattaforma. Linguaggi di programmazione compilati: C/C++, COBOL, FORTRAN, … Leggi tutto

Ordinare 4 dati

Con 6 confronti/scambi Prova con i numeri La sequenza di confronti (e scambi) segue l’algoritmo Bubble Sort. Codifica Pascal Con 5 confronti/scambi Prova con i numeri Ci sono 4 valori da ordinare Codifica