Datenstruktur

Status
Nicht offen für weitere Antworten.

Drake

Bekanntes Mitglied
Hallo

ich hab ein Problem damit wie ich bestimmte Daten verwalten soll.

Java:
public abstract class BasicGame {
    protected final int gameID;
    protected final LobbyState lobbyState;   //ein Enum
    ....
}

public class AGame extends BasicGame {
    private final LobbyStateAdditional1 lobbyStateAdditional1;   //ein weiterer Enum
    private final LobbyStateAdditional2 lobbyStateAdditional2;   //noch einer

    ...    
}

public class AnotherGame extends BasicGame {
    private final LobbyStateAdditional1 lobbyStateAdditional1;   //ein weiterer Enum
    private final LobbyStateAdditional2 lobbyStateAdditional2;   //noch einer

    ...
}

Das ganze findet am Server statt.

Meine Überlegung war diese in einer Map abzulegen
Java:
 Map<Integer, BasicGame>
bzw.
Java:
 Map<LobbyState, List<BasicGame>>


Aus diesen Daten bekommt ein Client in regelmäßigen Abständen eine Liste von Spielen entprechend seiner 'Position' in der Lobby, möchte er ein Spiel joinen soll es reichen wenn dieser nur die gameID schickt.

Irgendwie hackts bei mir gerade wie es am besten umsetzen kann.
 
A

anonym

Gast
Also, fassen wir zusammen:

Du hast mehrere Spiele, diese speichern je bis zu 5 LobbyStates. Zugriff auf ein Spiel soll möglich sein mit LobbyState und id.

Da hast du vier Möglichkeiten:

1) eine einfache Liste, die jedesmal komplett durchgegangen wird, wenn etwas gesucht wird.

2) wie 1), allerdings erleichterst du dir die Sache, indem du einen schöne Sortierung findest. Damit musst du nichtmehr alles durchsuchen.
Beispiel: Die Id eines Spiels sei ein String der Form [LS1].[LS2].[LS3].[RAND] (LS=LobbyState, der einfachheit halber nur drei, RAND ist eine Zufallszahl). Es gibt zwölf LobbyStates A, B, ..., L. Die LobbyStates werden alphabetisch sortiert um zu bestimmen, welcher LS1, welcher LS2 usw. ist. Die Spiele hätten dann Ids wie:

A.E.L.345
A.E.F.267
E.K.L.476
B.F.K.457

speicherst du die alphanumerisch sortiert findest du über binäry search sehr schnell das richtige Spiel. Und zwar mehr oder weniger unabhängig davon, ob du nach Ids oder nach LobbyStates suchst (Bedenke nur, dass ein LobbyState E an erster, zweiter und letzter Stelle stehen kann).

3) Eine Map mit Spielen pro LobbyState, eine mit Spielen pro ID, dass ist aber wahnsinnig speicherintensiv.

4) eine Map mit LobbyState pro ID, eine mit Spiel pro ID. Dann bei suchen nach LobbyState erst die ID aus der ersten Map und dann das Spiel aus der zweiten
 

Drake

Bekanntes Mitglied
danke für diesen Gedankengang, hast mir der Idee der IDs weitergeholfen. Muss noch zwar noch etwas weiter drüber nachdenken, aber hab schonmal neue Ansätze.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
M Eigene Datenstruktur um eine Menge zu speichern Allgemeine Java-Themen 3
Kirby.exe Union Find Datenstruktur Allgemeine Java-Themen 27
U Klassen Komplexe Datenstruktur in Java Allgemeine Java-Themen 4
J Datenstruktur für eine Map erstellen Allgemeine Java-Themen 2
B Suche geeignete Datenstruktur Allgemeine Java-Themen 5
ruutaiokwu datenstruktur welche sich "im kreis" dreht Allgemeine Java-Themen 26
P Große Datenstruktur im Speicher halten Allgemeine Java-Themen 13
B Suche passende Datenstruktur für 2 Einträge Allgemeine Java-Themen 19
G Welche Datenstruktur? Allgemeine Java-Themen 19
R Collections Datenstruktur gesucht Allgemeine Java-Themen 12
D Datenstruktur für Hierarchie/Baum mit Tiefe 3 Allgemeine Java-Themen 8
D Datenstruktur .. BlockingQueue (LIFO) Allgemeine Java-Themen 3
P Suche Datenstruktur Allgemeine Java-Themen 2
S Welche Datenstruktur für verschiedene Sprachen sinnvoll? Allgemeine Java-Themen 2
ruutaiokwu schnelle datenstruktur... Allgemeine Java-Themen 13
S Baumstruktur/Datenstruktur in Datei speichern Allgemeine Java-Themen 23
B Datenstruktur: Liste Allgemeine Java-Themen 5
A Thread sichere Datenstruktur Allgemeine Java-Themen 5
J Arrayähnliche Datenstruktur Allgemeine Java-Themen 4
B Script Problem "Dynamische Datenstruktur" Allgemeine Java-Themen 13
S Frage zum Design der Datenstruktur Allgemeine Java-Themen 10
G Datenstruktur: LISTEN Allgemeine Java-Themen 7
D Suche nach passender Datenstruktur Allgemeine Java-Themen 4
N Datenstruktur für Netze gesucht Allgemeine Java-Themen 8
G Daten von Excel kopieren - sinnvolle Datenstruktur? Allgemeine Java-Themen 3
U eigene Datenstruktur ArrayList<String> nach Object [][ Allgemeine Java-Themen 2
F welche Datenstruktur? Allgemeine Java-Themen 9
F Welche Datenstruktur Allgemeine Java-Themen 2
T Datenstruktur gesucht Allgemeine Java-Themen 18
T Datenstruktur für großes Netz Allgemeine Java-Themen 2
Z Welche Datenstruktur verwende ich h_ier bloss ? Allgemeine Java-Themen 14
G NullPointer. in einer Datenstruktur Allgemeine Java-Themen 2
S Welche Datenstruktur passt bei mir? Allgemeine Java-Themen 6
H Speicheverbrauch einer Datenstruktur ermitteln Allgemeine Java-Themen 29
S Suche geeignete Datenstruktur Allgemeine Java-Themen 27
S Datenstruktur für einen Baum Allgemeine Java-Themen 5
D Welche Datenstruktur? Allgemeine Java-Themen 2
T Datenstruktur für Straße ! Allgemeine Java-Themen 5
B Datenstruktur elegant zerlegen Allgemeine Java-Themen 6
G Datenstruktur gesucht: Allgemeine Java-Themen 3
A Datenstruktur und Sortierung Allgemeine Java-Themen 12

Ähnliche Java Themen

Neue Themen


Oben