|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Junior Member
Iscritto dal: Jan 2014
Messaggi: 15
|
[ Programmazione ] Come si calcola il costo e il tempo di un algoritmo??
Vorrei capire in pratica come si fanno a calcolare sul libro c'è tanto fumo e niente arrosto !!
Non spiega nel dettaglio come fare ... Mi potete Aiutare ??
|
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Jan 2014
Messaggi: 852
|
Ma intendi quello di esecuzione o di realizzazione?
|
|
|
|
|
|
#3 | |
|
Senior Member
Iscritto dal: Sep 2009
Città: Orbassano (TO)
Messaggi: 539
|
Quote:
Codice:
long oraInizio= System.nanoTime(); // qui il tuo algoritmo long tempoTrascorso = System.nanoTime() - oraInizio; Codice:
System.currentTimeMillis();
__________________
Concluso felicemente trattative con: Goudkamp, Snowfortrick, Longjohn1988, faangile, montelli, Gibson, veltosaar Cpu: i5 3570k / Vga: PNY GTX570 / Ram:2x4GB HyperX CL9 / Mb: AsRock Extreme 4 / Psu: Corsair AX750 / Dissi: Noctua NH-D14 / Mouse: Razer Mamba / Tastiera: Razer DeathStalker / Headset: CM Storm Sirus / Case: Cooler Master 690II adv / Ssd: Crucial C300 / Audio: Corsair SP2500 |
|
|
|
|
|
|
#4 | |
|
Senior Member
Iscritto dal: Oct 2005
Messaggi: 3306
|
Quote:
L'unico modo in cui il tempo entra nella definizione di algoritmo è che deve essere finito. |
|
|
|
|
|
|
#5 |
|
Senior Member
Iscritto dal: Jan 2014
Messaggi: 852
|
Ma anche qui ci sarebbe da chiedersi se il tempo in cui deve essere finito è quello di esecuzione o di consegna
La complessità è tipicamente una funzione della dimensione dei dati da elaborare. La forma di tale funzione deve essere determinata ragionando sull'algoritmo stesso. Le forme più comuni sono queste: 1: la complessità non dipende da nulla (es. accedere ad un elemento di un array); n: la complessità è direttamente proporzionale alla dimensione dei dati; questa complessità corrisponde in genere ad un ciclo for (es. calcolare il massimo di un array); n*m*l...; quando ci sono diversi cicli for annidati, ognuno dei quali si ripete rispettivamente n, m, l... volte; n^x; come il precedente, ma con n=m=l=... n*log(n): due cicli for annidati, ma quello interno riduce le sue iterazioni per ogni iterazione di quello esterno. Escludendo algoritmi banali, la complessità computazionale è generalmente abbastanza difficile da calcolare, soprattutto quando le iterazioni dipendono non dal numero, ma dal valore dei dati (che ovviamente non è noto a priori). Per lo stesso motivo di un algoritmo vengono calcolate anche le complessità nei casi "migliore", "peggiore" e "medio". |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 04:13.




















