Visualizzazione dei risultati da 1 a 2 su 2

Discussione: Problema con gli array

Visualizzazione discussione

  1. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Quote Originariamente inviata da Giammarco18 Visualizza il messaggio
    codice:
    public static boolean triple(int[]a){
        for (int i=0; i<a.length; i++)
            if(nAppar(a,i)>=3)
                return true;
        return false;
    }//triple
    Uhm no, qui dovresti passare a nAppar come secondo parametro (x) il valore di a[i] ... non solo i.

    Quote Originariamente inviata da Giammarco18 Visualizza il messaggio
    E' l'unico modo per gestire un esercizio del genere?
    Con solo for (cicli in generale) sì. Tra l'altro sarebbe un pochino ottimizzabile (la tua scansione annidata parte sempre dall'inizio ... non servirebbe; e il ciclo annidato potrebbe terminare appena trovate k occorrenze, dovrebbe essere parametrabile, ovviamente).

    Altrimenti si possono sfruttare le collezioni, in modo specifico una mappa (meglio "hashed", es. HashMap) con associazioni valore -> contatore. Se l'array è molto grande, supera certamente i for annidati.
    Ultima modifica di andbin; 04-02-2015 a 00:12
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.