2017-04-19 6 views
-3

ich eine Datei enthält die folgenden Daten für TelefonistinWelche Datenstruktur würden Sie verwenden? (Java)

operator 1 1 0.92 44 0.5 46 0.2 467 1.0 48 1.2 Und so weiter ...

der Datenstruktur würden Sie im Fall von Tausenden von Daten pro Betreiber und Tausende von Operatoren

Array Liste der Bediener Objekte, wobei jedes Objekt Hash-Karte für Schlüsselwert hat oder Array Liste der Bediener Objekte, bei denen jeder Operator Treemap oder Schlüsselwert hat

Ich bin Bedenken über die Erinnerung zuerst dann über die Leistung. Wenn Sie eine effizientere Datenstruktur haben, schlagen Sie sie bitte vor.

+5

ich eine Datenbank verwenden würde, . – Kayaman

+0

Ich möchte eine Berechnung auf Daten machen, deshalb möchte ich Datenstruktur verwenden – Mohammed

+0

Werden die Daten für die Berechnung verwendet und dann verworfen? Können Sie weitere Details zu den Berechnungen angeben, die Sie ausführen möchten? – MTCoster

Antwort

0

Klingt, als ob Sie eine Multimap wollen. Guava hat eine Implementierung: https://google.github.io/guava/releases/snapshot/api/docs/com/google/common/collect/Multimap.html. Apache Commons hat auch einen, denke ich. Hier

ist das Beispiel aus dem javadoc:


Der folgende Code:

ListMultimap<String, String> multimap = ArrayListMultimap.create(); 
    for (President pres : US_PRESIDENTS_IN_ORDER) { 
    multimap.put(pres.firstName(), pres.lastName()); 
    } 
    for (String firstName : multimap.keySet()) { 
    List<String> lastNames = multimap.get(firstName); 
    out.println(firstName + ": " + lastNames); 
    } 

... Ausgabe erzeugt wie:

Zachary: [Taylor] 
    John: [Adams, Adams, Tyler, Kennedy] 
    George: [Washington, Bush, Bush] 
    Grover: [Cleveland, Cleveland] 
Verwandte Themen