hey leute habe ein problem mit der doppelt verketteten liste:
zum konstrkutor, erstes element gibt den vorgänger, zweites element den nachfolger, drittes den wert.
Was mich wundert ist, dass die methode funktioniert
wenn ich also die werte 11,13,15,17 einfüge befinden sie sich auch in dieser reihnefolge in der liste.
wenn ich mir die methode aber anschaue , sieht es für mich aus, als müsste der neue werte immer zwischen die zwei letzten eingefügt werden, ungefähr so :
so verstehe ich die methode, denn zuerst erhält man ja die referenz vom vorgänger und legt sie in vorletztes ab, dann erstellt man den neuen knoten mit der eben abgelegten referenz als vorgänger und dem ende als nachfolger.
Daher macht es irgendwie keinen sinn, dass die methode funktioniert.
Java:
void addBehind(Object key){
// erst
Datensatz vorletztes = ende.getVorgänger();
Datensatz neu = new Datensatz(vorletztes,ende,key);
vorletztes.setNachfolger(neu);
ende.setVorgänger(neu);
}
zum konstrkutor, erstes element gibt den vorgänger, zweites element den nachfolger, drittes den wert.
Was mich wundert ist, dass die methode funktioniert
wenn ich also die werte 11,13,15,17 einfüge befinden sie sich auch in dieser reihnefolge in der liste.
wenn ich mir die methode aber anschaue , sieht es für mich aus, als müsste der neue werte immer zwischen die zwei letzten eingefügt werden, ungefähr so :
Java:
liste:11,13 input-> 15 ergibt 11,15,13
Daher macht es irgendwie keinen sinn, dass die methode funktioniert.