|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Member
Iscritto dal: Mar 2001
Messaggi: 53
|
selection sort complessità di spazio
come si misura la complessità di spazio di una funzione del genere:
Codice:
void i_sel_sort(float *A, int n){
int i, j, p;
float min;
for (i=0; i<n-1; i++) {
min = A[i];
p = i;
for (j=i+1; j<n; j++){
if (A[j]<min){
min = A[j];
p = j;
}
}
A[p] = A[i];
A[i] = min;
}
}
PS: le complessità di tempo tra un algoritmo ricorsivo e la sua versione tradotta in iterativo sono le stesse? |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Feb 2002
Città: Trento
Messaggi: 962
|
Non ho mai calcolato la complessità spaziale... comunque, penso che basti sommare lo spazio occupato dalle variabili utilizzate dalla procedura; qui hai:
4 interi (n, i, j e p) 1 float (min) 1 matrice di float di dimensione n (A[]) 1 puntatore alla matrice (*A) Quindi, l'occupazione tende a diventare (se conosci gli spazi occupati sulla tua macchina da ogni tipo di dato): 4 * spazio_di_un_intero + 1 * spazio_di_un_indirizzo + (n + 1) * spazio_di_un_float. Per cui, direi che la complessità è O(n).
__________________
"Et Eärallo Endorenna utúlien. Sinome maruvan ar Hildinyar tenn' Ambar-metta!" -- Aragorn Elessar, Heir of Isildur Mixmar -- OpenSuSE 11.1 on AMD 64 3000+ on DFI LanParty nF4-D | GeForce 6600 GT + Thermaltake Schooner on Samsung 710N Storage -- ( 2 x Hitachi Deskstar 80 Gb + 1 x Hitachi 250 Gb ) = 1 RAID 5 + 1 Storage space LaCie Ethernet Disk Mini 250 Gb | HP - DV2150 EL MILAN CLAN |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 22:53.



















