doppelt verkettete Liste mit zwei Stacks realisieren!
-
Hallo Zusammen,
ich muss eine doppelt verkette Liste mit Hilfe von zwei Stacks realisieren.
Könnte vll. jemand mir helfen?
Grüße
Farzad
-
Klar, wenn du uns zeigst, was du schon gemacht hast, können wir das sicher. Deine Hausaufgaben machen wir aber nicht.
-
farzad73 schrieb:
Hallo Zusammen,
ich muss eine doppelt verkette Liste mit Hilfe von zwei Stacks realisieren.sagt wer?
listen macht man üblicherweise nicht mit stacks!
-
hääääh ?! schrieb:
listen macht man üblicherweise nicht mit stacks!
er meint's wohl umgekehrt, also stacks mit hilfe von listen implementieren.
-
würde sagen, umgekehrt ist es genauso wenig üblich.
die begriffe stack und liste sind schon ganz zurecht unterschiedlich.
aber wegen mir...macht mal.
-
1. Ich muss doppelt verkettete Liste mit Stack realisieren und nich umgekehrt!
was "listen-freak" sagt wissen doch alle und gibt es überall zu finden.2. Ich will nicht, dass jemand meine Aufgabe macht, sondern ich brauche erst nur einen Tipp um anfangen zu können. Die Aufgabe ist echt kompliziert.
und freue mich über jede Idee.
Danke,
Farzad
-
doppelt verkettete liste, kein problem. welche rolle soll der stack dabei spielen.
-
Wie wäre es, wenn Du mit der Erstellung der Liste anfängst und dann den Stack daraus baust?
-
Tachyon schrieb:
Wie wäre es, wenn Du mit der Erstellung der Liste anfängst und dann den Stack daraus baust?
er will's doch andersrum haben, du blitzmerker.
-
bregenwurst-freak schrieb:
Tachyon schrieb:
Wie wäre es, wenn Du mit der Erstellung der Liste anfängst und dann den Stack daraus baust?
er will's doch andersrum haben, du blitzmerker.
Jo, nur das macht keinen Sinn. Ich denke, er hat die Aufgabe falsch verstanden.
-
Tachyon schrieb:
Ich denke, er hat die Aufgabe falsch verstanden.
das sehe ich auch so
-
Anscheinend will keiner mir glauben,
OK!
Dann füge ich einfach das Link vom Übungsblatt ein:
Die Aufgabe1:http://www-ai.math.uni-wuppertal.de/SciComp/teaching/ss08/info2/Ueb/blatt2_ss08.pdf
Und?
Hab ich die Aufgabe falsch verstanden?!oder habe ich doch Recht?!
-
Hmm, okay, die Aufgabe hast Du richtig verstanden. Aber die ist Schwachsinn.
Ein Stack ist eine Datenstruktur die dem LIFO-Prinzip folgt. Ich kenne natürlich nicht die in der Aufgabe erwähnt Implementierung eures Stacks, aber eigentlich sollte da nur der Zugriff auf das jeweils letzte Element möglich sein.
Damit fällt dann ja irgendwie das Löschen irgendwelcher Elemente zwischen Start und Ende sowie der Zugriff darauf flach. Also l_insert, l_delete, l_advance usw. machen keinen Sinn. Aber vielleicht sehe ich ja auch nur den Wald vor lauter Bäumen nicht.
-
Die Rede ist ja auch von 2 Stacks.
Als Denkanstoß (bin mir selber nicht so sicher, obs funktioniert) würde ich sagen, daß das top des Stack Nr1 das aktuelle Element ist, top von Stack Nr2 das nächste Element. Durch pushen des gepopptenElements vom jeweils anderen Stack kann man in der Liste rumwandern und Elemente löschen/einfügen.
-
Jo, das könnte es tatsächlich sein. Man lernt nie aus.
-
Tachyon, danke für deie Antwort,
ich denke das kann man mit zwei Stacks, S_links und S_rechts ,die mit Kopf gegebüber einander stehen und nicht parallel, realisieren. So wenn in einer doppelt verkettete Liste der Zeiger sich einmal nach rechts oder links bewegt, müssen (pop()für S_rechts ,push() für S_links) bzw. (push() für S_rechts,pop() für S_links) durchgeführt werden.Vll. kann man so alle Funktionen für eine DCL auch mit zwei Stacks realisieren.