Massima occorrenza in un array

di il
5 risposte

Massima occorrenza in un array

SOS PRINCIPIANTE PROGRAMMATORE
dato un array A=[0,0,1,1,1] devo restituire la massima occorrenza del numero che ricorre più volte nell'array cioè in questo caso 3.Come posso fare? devo fare un metodo java che faccia questo. Scusate ma sono alle prime armi.....

5 Risposte

  • Re: Massima occorrenza in un array

    merlino2015 ha scritto:


    SOS PRINCIPIANTE PROGRAMMATORE
    dato un array A=[0,0,1,1,1] devo restituire la massima occorrenza del numero che ricorre più volte nell'array cioè in questo caso 3.Come posso fare? devo fare un metodo java che faccia questo. Scusate ma sono alle prime armi.....
    Ci sono naturalmente più modi per arrivare alla soluzione. La questione semmai riguarda quello che puoi/sai o non puoi/sai usare. Hai facoltà di usare le collection? O devi poterlo risolvere solo usando dei cicli?

    Se si usano solo cicli, servono almeno 2 cicli annidati (un for dentro un for più esterno) e serve fare un minimo di ragionamento.

    L'array di esempio è banale perché tutto contiguo ma si presume che debba funzionare anche in qualunque altro caso, es. [0, 1, 0, 1, 1]
  • Re: Massima occorrenza in un array

    Si posso usare quello che voglio. se per ipotesi deve funzionare solo su un array con occorrenze tutte contigue questo che ho scritto potrebbe andare bene? ho provato a stampare sembra di si......spero:) grazie mille

    public class maxOcc {
    static int[] array = { 0, 0,1,1,1,2 };

    public static void main(String args[]) {
    int a=MAX(array);
    System.out.print(a);

    }
    public static int MAX(int [] a) {
    int contatore = 1;
    int max = 1;
    for (int i = 0; i < array.length-1; i++) {
    if (array == array[i + 1]) {
    contatore++;
    if (contatore > max) {
    max = contatore;
    }

    }
    else contatore=1;
    }
    return max;
    }
    }
    non so se potevo scrivere il codice così......devo rileggere il regolamento scusate se non va bene sono nuovo
  • Re: Massima occorrenza in un array

    Scusate non sono capace a formattare il codice non ho capito come si fa........
  • Re: Massima occorrenza in un array

    merlino2015 ha scritto:


    se per ipotesi deve funzionare solo su un array con occorrenze tutte contigue questo che ho scritto potrebbe andare bene?
    Sì, considerando e dando per scontato che valori uguali siano contigui, la logica è quella corretta. C'è però un caso particolare che non hai considerato: se l'array fosse "vuoto" (lunghezza 0), il ciclo for non esegue ma restituisci comunque 1 che non è coerente.

    merlino2015 ha scritto:


    non so se potevo scrivere il codice così......devo rileggere il regolamento scusate se non va bene sono nuovo
    Il codice, se già ben indentato, sarebbe da postare tra i tag [ code ] [ /code ] (senza spazi)
  • Re: Massima occorrenza in un array

    Ok grazie mille!
Devi accedere o registrarti per scrivere nel forum
5 risposte