grazie sempre per la tua disponibilità
Sì, per la priorità degli operatori.
Anche se fai i=0; v[i++]=x;
allora v[0] = x e i ora vale 1.
Mentre se fai i=0; v[++i]=x;
allora v[1] = x e i vale 1.
grazie mille sei davvero in gamba!
un ultima cosa…
il counting sort è così potente e conviene usarlo SOLO quando sappiamo a priori il range di valori presenti nel vettore o si può usare anche in altri casi?
““Funziona”” se i valori sono in un range ristretto. Infatti supponendo che i valori siano in un intervallo di ampiezza(differenza tra il valore massimo ed il valore minimo che possono comparire) H allora la complessità del counting sort è O(N+H) mentre quella del quicksort (o altri algoritmi) è O(NlogN) e come vedi in quella del quicksort l’ampiezza del range di valori non influisce nella complessità.
Quindi il counting diventa molto vantaggioso rispetto agli altri algoritmi quando N è molto elevato e H è relativamente piccolo. Per esempio in lunapark .
grazie mille, spero di arrivare presto a risolvere questo esercizio ahaha