DarthNihilus
Grünschnabel
Hallo zusammen,
erstmal.. ich programmiere das in PHP; aber da es eigentlich zu Java keinen Unterschied gibt, und es wohl hier mehr gibt die von verketteten Listen Ahnung haben, frag ich einfach mal im Java-Bereich.
Ich habe eine vollständige Liste programmiert, sie ist einfach verkettet. Jedoch hat ein Knoten 3 Attribute. Inhalt, Nachfolger und zusätzlich einen Nachbar. Dieser ist wieder ein Knoten. Ich habe außerdem eine abstrakte Klasse Element, und die unterklassen NeighbourEnd, FollowerEnd, ElementClass sowieso FollowerStart. FollowerStart ist jeweils pro Liste das erste Element, sprich wenn ein Objekt einen Nachbar hat, ist dieses ein FollowerStart, der dann als Nachfolger die Folgeelemente hat. Bis hier verstanden?
Alles funktioniert auch bestens. Allerdings weiß ich nicht wie ich die Verwendung gestalten soll. Das System dient einer Websitenavigation, die mehrdimensional ist.
Das heißt, es wird eine Ordnerstruktur rekursiv gescannt. Aus dieser Scannung wird die Liste erstellt.
Wenn ich eine normale Liste habe, mach ich jeweils ein neues Element an den Anfang, ans Ende, oder hinter ein Objekt. Da ich aber auch Nachbarn habe, müsste ich also eine Methode (set_nachbar) oder so implementieren. Aber wo soll diese ansetzen? Soll sie jeweils beim ersten Element gelten, beim letzten, bei deren Nachbarn oder wo? Ich dachte mir also ich schreibe noch ein bisschen zusatzcode "Cursor". Das heißt es wird ein virtueller Cursor gesetzt bei welchem Element man dann ist, und dort kommt der Nachbar oder der Nachfolger hin. Um dann wieder eine Ebene nach oben zu kommen gibts die Methode back();
ist diese Vorgehensweise geschickt oder empfiehlt sich da etwas anderes? Die "Cursor-Variante" ist teils schon sehr kompliziert und viel zu Code lastig. (Anhand der prüfung if element is_set cursor... ihr wisst was ich meine
Gruß, Daniel
erstmal.. ich programmiere das in PHP; aber da es eigentlich zu Java keinen Unterschied gibt, und es wohl hier mehr gibt die von verketteten Listen Ahnung haben, frag ich einfach mal im Java-Bereich.
Ich habe eine vollständige Liste programmiert, sie ist einfach verkettet. Jedoch hat ein Knoten 3 Attribute. Inhalt, Nachfolger und zusätzlich einen Nachbar. Dieser ist wieder ein Knoten. Ich habe außerdem eine abstrakte Klasse Element, und die unterklassen NeighbourEnd, FollowerEnd, ElementClass sowieso FollowerStart. FollowerStart ist jeweils pro Liste das erste Element, sprich wenn ein Objekt einen Nachbar hat, ist dieses ein FollowerStart, der dann als Nachfolger die Folgeelemente hat. Bis hier verstanden?
Alles funktioniert auch bestens. Allerdings weiß ich nicht wie ich die Verwendung gestalten soll. Das System dient einer Websitenavigation, die mehrdimensional ist.
Das heißt, es wird eine Ordnerstruktur rekursiv gescannt. Aus dieser Scannung wird die Liste erstellt.
Wenn ich eine normale Liste habe, mach ich jeweils ein neues Element an den Anfang, ans Ende, oder hinter ein Objekt. Da ich aber auch Nachbarn habe, müsste ich also eine Methode (set_nachbar) oder so implementieren. Aber wo soll diese ansetzen? Soll sie jeweils beim ersten Element gelten, beim letzten, bei deren Nachbarn oder wo? Ich dachte mir also ich schreibe noch ein bisschen zusatzcode "Cursor". Das heißt es wird ein virtueller Cursor gesetzt bei welchem Element man dann ist, und dort kommt der Nachbar oder der Nachfolger hin. Um dann wieder eine Ebene nach oben zu kommen gibts die Methode back();
ist diese Vorgehensweise geschickt oder empfiehlt sich da etwas anderes? Die "Cursor-Variante" ist teils schon sehr kompliziert und viel zu Code lastig. (Anhand der prüfung if element is_set cursor... ihr wisst was ich meine
Gruß, Daniel