PDA

Visualizza la versione completa : [JAVA] Iterator o algoritmo di ricerca?


graziano mesina
08-12-2005, 19:24
Ciao, vorrei avere un piccolo consiglio:

Ho un ArrayList di oggetti e voglio verificare se c'č una corrispondenza tra un determinato valore e gli elementi dell'ArrayList.
E' preferibile utilizzare un algoritmo di ricerca tipo quella binaria o creare un oggetto di tipo Iterator e scandire gli elementi?

floyd
09-12-2005, 09:30
un arraylist non č ordinato
dunque non puoi utilizzare algoritmi di ricerca binaria se non te li scrivi da solo
se l'array contiene un numero abbastanza basso di elementi č meglio scorrere l'array con get(int index)

graziano mesina
09-12-2005, 09:41
se l'arraylist contiente molti elementi utilizzo Iterator?

floyd
09-12-2005, 09:44
fermo :madai!?:
io molti elementi voglio dire > 10000
se hai un array cosė, usare il get o un iterator č la stessa cosa, anzi se devi usare l'iterator, probabilmente ci metti di pių, perchč arraylist deve costruire un oggetto in pių
in quel caso dovresti ottenere un array con toArray, ordinarlo, e fare una ricerca con un metodo che ti scrivi tu
:D

graziano mesina
09-12-2005, 09:49
Tra il get e iterator tu quale consigli?
Io ho letto che utilizzare Iterator č pių elegante...

floyd
09-12-2005, 10:01
io scriverei le due versioni, poi misurerei il tempo che ci mettono e sceglierei quella pių veloce

Loading