verkettete listen

Status
Nicht offen für weitere Antworten.
I

ik

Gast
verstehe einfach das prinzip von verketteten listen nicht, bitte möglichst detailliert und für ganz dumme erklären

Code:
public class Test {
	public static void main (String[] args) {
		
	Node head, n;

	head = new Node (1,null);
	n = new Node (2,head); head=n;
	n = new Node (3,head); head=n;

	n=head;
	

	while (n!=null) {
		System.out.println ("Element= "+n.getElement());
		n=n.getNext();
}
}
}

Wieso braucht man nur head und n als "node" obwohl man 3 elemente hat?
Was genau passiert wenn head = n? was ist head? ist das nicht der knoten der das element "1" enthält?
wird der nicht bei head=n überschrieben?

ich blicke da echt nicht durch und wäre sehr dankbar für Hilfe!


ik
 
G

Gast

Gast
du hast zwar jetzt nicht die Node Klasse gepostet, aber der source wie er da steht macht so keinen sinn, das hast du richtig erkannt
 
G

Guest

Gast
aber es funktioniert....hier die node klasse

Code:
public class Node {
	int element;
	Node next;

	Node (int d, Node n) {
		element=d; next=n;
	}	
	
	void setElement (int d) { element=d; }
	int getElement()	{ return element; }
	
	void setNext (Node n)	{ next=n; }
	Node getNext()		{ return next; }
}
[/quote]
 
G

Gelöschtes Mitglied 5909

Gast
des is ne einfach verkettete liste, wo ein element sein nächstes kennt, so wie wenn jemand am tisch seinen rechten nachbarn kennt ;)
 

Marco13

Top Contributor
Das ist da aber schon irgendwie komisch aufgeschrieben - da wird wild-wüst rum-zugewiesen, so dass man am Ende selbst nicht mehr weiss, was so drin steht.

Wieso braucht man nur head und n als "node" obwohl man 3 elemente hat?
Die drei Elemente werden nacheinander in die Liste reingehängt - wie Eisenbahn-Waggons, die man einen Zug hängt.

Was genau passiert wenn head = n? was ist head? ist das nicht der knoten der das element "1" enthält?
Könnte man meinen, aber da werden einige seltsame Zuweisungen gemacht - bei sowas
...
n = new Node (3,head); head=n;
n=head;
... kann man eigentlich nur den Kopf schütteln...

wird der nicht bei head=n überschrieben?
Ja. Die Liste wird sozusagen "rückwärts" aufgebaut. Wenn mit
node = new Node("x", otherNode);
ein Knoten erstellt wird, dann ist "otherNode" der Nachfolger des neu erstellten Knotens.

Man hätte die Erstellung der Liste auch so schreiben können:
Code:
Node third = new Node (1,null);
Node second = new Node (2,third);
Node first = new Node (3,second);
Node head = first;
Aber das ist eben keine besonders "elegante" Darstellung.
 
G

Guest

Gast
Danke für die erklärung....

was ist denn nun die elegante lösung?

Bedeutet der Ausdruck head = newNode, dass head auf newNode zeigt, also newNode der neue 1. knoten ist?
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
S Einfach-Verkettete-Listen Ausgabe zeigt nur 1. und letzte instanz Java Basics - Anfänger-Themen 2
V einfach verkettete Listen Java Basics - Anfänger-Themen 10
A Was könnten typische Prüfungsaufgaben zum Thema lineare, verkettete Listen sein? Java Basics - Anfänger-Themen 5
N verkettete Listen Java Basics - Anfänger-Themen 4
M verkettete Listen Java Basics - Anfänger-Themen 1
V Methoden Verkettete Listen Index eines Elementes ausgeben Java Basics - Anfänger-Themen 10
D Collections Verkettete Listen und Fußball... Java Basics - Anfänger-Themen 11
S Verkettete Listen Java Basics - Anfänger-Themen 10
S Verkettete Listen in Java Java Basics - Anfänger-Themen 11
C Methoden Verkettete listen - next methode Java Basics - Anfänger-Themen 3
I verkettete listen Java Basics - Anfänger-Themen 12
K verkettete Listen - Klasse Knoten Java Basics - Anfänger-Themen 19
U Verkettete Listen Java Basics - Anfänger-Themen 13
M Probleme mit verkettete Listen Java Basics - Anfänger-Themen 4
M verkettete Listen Java Basics - Anfänger-Themen 39
T Klasse in Java für doppelt verkettete Listen Java Basics - Anfänger-Themen 4
H Doppelt verkettete Listen Java Basics - Anfänger-Themen 2
S doppelt verkettete Listen Java Basics - Anfänger-Themen 4
X Vererbung: Doppelt verkettete Listen Java Basics - Anfänger-Themen 16
M Verkettete Liste Java Basics - Anfänger-Themen 1
H Java verkettete Liste, Wert eines Index zurückgeben Java Basics - Anfänger-Themen 1
Igig1 Autoparkplatz verkettete Liste erstes und letztes Auto Java Basics - Anfänger-Themen 13
R Rückgabe: verkettete Liste Java Basics - Anfänger-Themen 2
R einfach verkettete Liste Java Basics - Anfänger-Themen 1
R einfach verkettete Liste Java Basics - Anfänger-Themen 12
B Verkettete Liste durchgehen und einzelne Elemente in neue Liste tun Java Basics - Anfänger-Themen 9
B Bin komplett am verzweifeln :( Verkettete Liste die Objekte hat Attribut auslesen Java Basics - Anfänger-Themen 14
Y Einfügen in eine doppelt verkettete Liste Java Basics - Anfänger-Themen 8
A Doppelt verkettete Liste rückwärts ausgeben Java Basics - Anfänger-Themen 17
D Doppelt Verkettete Zirkular-Liste Java Basics - Anfänger-Themen 1
A Verkettete Liste Java Basics - Anfänger-Themen 2
B Doppelt verkettete Liste implementieren Java Basics - Anfänger-Themen 8
L verkettete Liste Java Basics - Anfänger-Themen 15
scratchy1 doppelt verkettete Liste testen Java Basics - Anfänger-Themen 8
R Methoden Entferne alle identische Knoten (Typ String) aus verkettete Liste Java Basics - Anfänger-Themen 8
C Methoden Über eine einfach verkettete Liste Java Basics - Anfänger-Themen 8
H Verkettete Liste Java Basics - Anfänger-Themen 7
N Verkettete liste rückwärts ausgeben Java Basics - Anfänger-Themen 18
K Verkettete Liste und seine Methoden Java Basics - Anfänger-Themen 1
N Verkettete Liste implementieren Java Basics - Anfänger-Themen 5
O Einfach verkettete Liste - Revert Methode Java Basics - Anfänger-Themen 1
G Verkettete Liste - Neu erzeugte Elemente werden nicht ausgegeben Java Basics - Anfänger-Themen 5
S Einfach verkettete Liste Element an bestimmter Position einfügen Java Basics - Anfänger-Themen 24
B Doppelt Verkettete Liste - Ist alles gut so? Java Basics - Anfänger-Themen 3
C Verkettete Liste - sortiert einfügen Java Basics - Anfänger-Themen 7
R Erste Schritte Verkettete Liste will einfach nicht in meinen Schädel Java Basics - Anfänger-Themen 11
B in einem abstrakten Set ,Elemente einer einfache verkettete List epeichern Java Basics - Anfänger-Themen 13
U Datentypen Doppelt verkettete Liste implementieren Java Basics - Anfänger-Themen 13
J Methoden Doppelt verkettete Liste remove(Object) Java Basics - Anfänger-Themen 8
B OOP Über eine doppelt verkettete Liste iterieren Java Basics - Anfänger-Themen 4
hooked Verkettete Liste / linked list Java Basics - Anfänger-Themen 2
L Doppelt verkettete Liste Java Basics - Anfänger-Themen 6
J Eine Art verkettete Liste aber mit teils mehr als einem Nachfolger Java Basics - Anfänger-Themen 8
V Verkettete Liste rückwärts ausgeben Java Basics - Anfänger-Themen 3
R doppelt verkettete Liste aus Arrays erstellen Java Basics - Anfänger-Themen 1
K Einfach Verkettete Liste - addFirst() Java Basics - Anfänger-Themen 7
G 2 Aufgabe rund um eine verkettete Liste Java Basics - Anfänger-Themen 2
O Verkettete Liste Java Basics - Anfänger-Themen 10
E Methoden auf von Methoden erstellte Objekte zugreifen (verkettete Liste) Java Basics - Anfänger-Themen 10
X Einfach verkettete Liste, keine Fehlermeldung Programm friert ein Java Basics - Anfänger-Themen 4
S Doppelt verkettete Liste Java Basics - Anfänger-Themen 3
G Doppelt Verkettete Liste Java Basics - Anfänger-Themen 2
A Doppelt Verkettete Liste Java Basics - Anfänger-Themen 16
E doppelt verkettete liste Java Basics - Anfänger-Themen 10
V Verkettete Liste. Java Basics - Anfänger-Themen 7
X Einfach Verkettete Liste Java Basics - Anfänger-Themen 16
K Verkettete Liste - Methode entwerfen Java Basics - Anfänger-Themen 14
S Verkettete Liste rückwärts ausgeben Java Basics - Anfänger-Themen 12
B Insertionsort verkettete Liste Java Basics - Anfänger-Themen 4
B Stack in eine verkettete Liste pushen Java Basics - Anfänger-Themen 4
R verkettete liste ansEndeSchieben Java Basics - Anfänger-Themen 13
T Verkettete Liste Java Basics - Anfänger-Themen 14
A Klassen Innere Klassen, verkettete Liste Java Basics - Anfänger-Themen 9
B Zweifach-verkettete Liste umkehren Java Basics - Anfänger-Themen 6
X verkettete Liste Java Basics - Anfänger-Themen 13
E Datentypen Doppelt verkettete Liste Java Basics - Anfänger-Themen 10
P Einfügen in doppelt verkettete Liste Java Basics - Anfänger-Themen 7
kae verkettete Liste Java Basics - Anfänger-Themen 5
S Queue als doppelt verkettete Liste Java Basics - Anfänger-Themen 2
S Stack als verkettete liste/ toString methode Java Basics - Anfänger-Themen 3
B OOP Verkettete Liste Java Basics - Anfänger-Themen 7
R verkettete liste Java Basics - Anfänger-Themen 5
M Verkettete Liste Java Basics - Anfänger-Themen 4
M verkettete liste Java Basics - Anfänger-Themen 7
N doppelt verkettete liste einfügen Java Basics - Anfänger-Themen 7
K Datentypen Einfach/Doppelt verkettete Liste Java Basics - Anfänger-Themen 4
N einfach verkettete liste fehler Java Basics - Anfänger-Themen 5
N einfach verkettete liste Java Basics - Anfänger-Themen 3
G verkettete Liste - invertieren Java Basics - Anfänger-Themen 2
B OOP Einfach verkettete Liste - rekursive Methoden Java Basics - Anfänger-Themen 1
B verkettete Liste Java Basics - Anfänger-Themen 8
S zyklisch verkettete Liste erstellen Java Basics - Anfänger-Themen 3
S einfach verkettete Liste Java Basics - Anfänger-Themen 19
O Stack Implementierung als verkettete Liste Java Basics - Anfänger-Themen 8
W Doppelt verkettete Liste implementieren Java Basics - Anfänger-Themen 2
T Einfach verkettete Liste: Wie Elemente löschen? Java Basics - Anfänger-Themen 4
J verkettete Liste Java Basics - Anfänger-Themen 2
D Einfach verkettete Liste Java Basics - Anfänger-Themen 20
DasDogma Verkettete Liste - Element löschen Java Basics - Anfänger-Themen 2
H Verkettete Liste Java Basics - Anfänger-Themen 5

Ähnliche Java Themen

Neue Themen


Oben