PDA

View Full Version : [algoritmi] help me


Nalim83
22-08-2008, 18:19
ciao a tutti sto preparando l'esame di programmazione ma ho serie difficoltà con alcuni esercizi.
Potreste darmi una mano?

Fornire la specifica di un algoritmo per il seguente problema:
INPUT: vettore INT di lunghezza n di numeri di tipo intero
OUTPUT: vettore FR di interi rappresentanti la frequenza di ogni intero INT.

anche piccoli consigli sono ok

zyky
22-08-2008, 20:26
ciao a tutti sto preparando l'esame di programmazione ma ho serie difficoltà con alcuni esercizi.
Potreste darmi una mano?

Fornire la specifica di un algoritmo per il seguente problema:
INPUT: vettore INT di lunghezza n di numeri di tipo intero
OUTPUT: vettore FR di interi rappresentanti la frequenza di ogni intero INT.

anche piccoli consigli sono ok


ciao, non sono sicuro di aver capito quello che ti è stato richiesto.
da quel che ho capito:

hai in input una serie di interi.
devi scrivere in uscita quante volte è comparso un intero all'interno della serie.

non so in che modo ottieni l'input e in che modo devi far comparire l'output, cmq io strutturerei il metodo principale in un modo tipo questo:


public static int[] apparizioni(int[] array) {
int i, j; // indici
int k; // conta le apparizioni
int[] apparizioni = new int[array.length];
for(i=0;i<array.length;i++) {
k=0;
for(j=0;j<array.length;j++)
if(array[j]==array[i])
k++;
apparizioni[i] = k;
}
return apparizioni;
}


questo codice scorre tutti gli elementi dell'array in input, e per ogni elemento scorre di nuovo tutto l'array per vedere quanti elementi uguali a quello ci sono. quindi li memorizza nell'array da restituire.

se, per esempio, in input hai un array del tipo:
[1,2,3,4,5,6,7,8,9,1,2,3,4,5]
l'uscita sarà un array del tipo:
[2,2,2,2,2,1,1,1,1,2,2,2,2,2]

ovvero, ogni apparizioni[i] indica quante volte compare nella lista il numero intero array[i].


cmq è solo una bozza dato che non conosco le tue esigenze (magari non ho capito nulla, hehe)


vabbè, spero sia d'aiuto


byebye

Nalim83
22-08-2008, 20:32
ti ringrazio enormemente....
credo che continuerò a chiedervi aiuto nei prossimi giorni
:)))))
grazie