Hi, ich bastle gerade ein Werkzeug für EliteDangerous und möchte nicht gleich einen bösen Schnitzer einbauen...
Gedacht hatte ich mir die Datenstruktur so:
Es gibt ca. 1.000.000 Stationen und pro Station jeweils ca. 30 Commoditys. Später sollen alle Stationen und jedes Commodity durchlaufen werden und mit allen Commoditys aller anderen Stationen verglichen werden. Der Aufwand wäre hierfür ca. (1.000.000*30)². Ich kann aber auch Filter einsetzen, wenn das zu viel würde.
Jetzt frage ich mich, mit welcher Datenstruktur ich am schnellsten alle Stationen durchlaufen kann... Wenn gewünscht, kann ich auch den Algo gerade durch Pseudocode skizzieren.
Danke für eure weisen Antworten
Gedacht hatte ich mir die Datenstruktur so:
Java:
import java.util.LinkedHashMap;
public class EliteTr {
public static class Commodity {
Station station = null;
long updated_at;
long id;
boolean toBuy;
int price;
int amount;
}
public static class Station {
LinkedHashMap<Long, Commodity> commodities = new LinkedHashMap<>();
long updated_at;
long id;
}
private LinkedHashMap<Long, Station> stations = new LinkedHashMap<>();
public static void main(String[] args) {
System.out.println("hello world");
}
}
Es gibt ca. 1.000.000 Stationen und pro Station jeweils ca. 30 Commoditys. Später sollen alle Stationen und jedes Commodity durchlaufen werden und mit allen Commoditys aller anderen Stationen verglichen werden. Der Aufwand wäre hierfür ca. (1.000.000*30)². Ich kann aber auch Filter einsetzen, wenn das zu viel würde.
Jetzt frage ich mich, mit welcher Datenstruktur ich am schnellsten alle Stationen durchlaufen kann... Wenn gewünscht, kann ich auch den Algo gerade durch Pseudocode skizzieren.
Danke für eure weisen Antworten