Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
ciao a tutti
vorrei sviluppare un programma in Java ( uso NetBeans ) che dato un certo numero (N) di oggetti , mi proponga delle sequenze formate da tutti gli oggetti , filtrate e ordinate con dei parametri .
mi sono inceppato presto , la mia idea era quella sviluppare tutte le conbinazioni (permutazioni) possibili di (N) assegnarle ad un array e successivamente andarle a filtrare , ma finché rimango entro i dieci numeri riesco a dimensionare l'array per contenere tutte le combinazioni , ma quando passo i dieci ..... il PC mi dice :vai al negozio e compra altra memoria .
ora mi chiedevo c'è qualche anima buona che mi vorrà dare qualche suggerimento per metodi alternativi ?
ciao !!!
Potresti filtrare gli oggetti cosi' come vengono creati, senza memorizzarli nell'array... (crea un oggetto, vedi se il filtro lo permette, se lo permette aggiungilo all'array, se non e' permesso semplicemente non aggiungerlo all'array).
Tasto destro sul progetto poi -> properties -> run
nella voce "VM Options" scrivi
Codice sorgente - presumibilmente Plain Text
-Xms512m -Xmx1024m
Ciè vuol dire che fai partire la java virtual machine con uno spazio minimo sull heap di 512mb e massimo 1gb..
Ovviamente dipende dalle performance dell'hardware installato nella tua macchina, quindi vedi tu se aumentare questi parametri.
prima di tutto grazie per le risposte ( istantanee )
per Pierotofy
ho pensato alla soluzione che proponi , però avrei il problema del dimensionamento dell'array , dovrei sovradimensionarlo oppure una volta raggiunto il limite massimo fare un qualcosa tipo copia dei dati dell'array , creazione di un array più grande e incolla dei dati ( mi sembra un po incasinato visto il mio basso livello di conoscenza  .
per Bonny
ho provato ad assegnare una quantità di memoria maggiore ( -Xms512 -Xmx2048 ) o provato anche
( -Xms1024 -Xmx2048 )ma nella finestra di output di netbeans mi compare il messaggio :
Error occurred during initialization of VM
Too small initial heap
Java Result: 1
BUILD SUCCESSFUL (total time: 0 seconds)
invece se provo ad avviare la parte di codice che ho postato con 12 anziché 5 il messaggio è il seguente :
il numero totale delle permutazioni è 479001600
Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
at provamemoria.ProvaMemoria.Permutazioni(ProvaMemoria.java:22)
at provamemoria.ProvaMemoria.main(ProvaMemoria.java:27)
Java Result: 1
ciao e grazie ad entrambi
Ultima modifica effettuata da Erreg il 31/01/2014 alle 22:00