Ciao![]()
sto implementando un programma che deve effettuare statistiche sulle parole presenti in un documento.
Tralasciando il codice che carica il documento e legge tutte le parole presenti al suo interno (già realizzato e funzionante), ho dei problemi per le statistiche.
Attualmente, la funzione che legge le parole dal documento, utilizza la funzione Add della classe ArrayList per aggiungere ogni parola:
dove output è un oggetto della classe ArrayList e word è un oggetto della classe StringBuilder.codice:output.Add(LCase$(word.ToString))
L'oggetto output viene restituito alla funzione che deve effettuare le statistiche: questa funzione, per ogni parola presente nell'ArrayList restituito, deve verificare se ne sono presenti altre ed incrementare una "variabile contatore", quindi aggiungere la parola e le relative occorrenze ad un'ulteriore struttura dati (per esempio una SortedList).
Qual è il problema?
L'efficienza![]()
Ho testato il programma con un testo contenente circa 200mila parole e al momento di effettuare le statistiche impiega poco più di 200 secondi.![]()
Qualche suggerimento?
Grazie![]()