brauche Hilfe bei verkettete Liste
Hallo Leute,
wie mein Nick schon sagt bin neuling in diesem Thema.
Ich habe eine Aufgabenstellung bekommen bei der ich aus einer einfach verketteten Liste eine doppelt verkette machen soll.
Als erstes wollte ich in der einfach verketteten Liste nun einen Zeiger einfügen der immer auf das ende der Liste zeigt und über diesen die neuen Werte "inhalt" anfügen.
Doch leider scheitert es schon dabei sehe irgendwie vor lauter Bäume den Wald nicht mehr.
Wer kann mir anhand des Beispiels helfen das ich es endlich richtig verstehe
Mir Brummt schon der Kopf ohne Ende.
Hallo Leute,
wie mein Nick schon sagt bin neuling in diesem Thema.
Ich habe eine Aufgabenstellung bekommen bei der ich aus einer einfach verketteten Liste eine doppelt verkette machen soll.
Als erstes wollte ich in der einfach verketteten Liste nun einen Zeiger einfügen der immer auf das ende der Liste zeigt und über diesen die neuen Werte "inhalt" anfügen.
Doch leider scheitert es schon dabei sehe irgendwie vor lauter Bäume den Wald nicht mehr.
Wer kann mir anhand des Beispiels helfen das ich es endlich richtig verstehe
Mir Brummt schon der Kopf ohne Ende.
Code:
#include "stdafx.h"
using namespace System;
//die Struktur für den verwalteten Heap
ref struct beispiel {
int inhalt;
beispiel ^next;
};
void einfuegen(int inhaltneu, beispiel ^anfang) {
beispiel ^zeiger;
zeiger=anfang;
while (zeiger->next!=nullptr) {
zeiger=zeiger->next;
}
zeiger->next=gcnew beispiel;
zeiger=zeiger->next;
zeiger->inhalt=inhaltneu;
}
void ausgabe(beispiel ^anfang) {
beispiel ^zeiger;
zeiger=anfang;
Console::WriteLine("{0}", zeiger->inhalt);
while (zeiger->next != nullptr) {
zeiger = zeiger->next;
Console::WriteLine("{0}", zeiger->inhalt);
}
}
int main(array<System::String ^> ^args)
{
beispiel ^anfang;
anfang=gcnew beispiel;
anfang->inhalt=0;
for (int schleife=1;schleife<5;schleife++) {
einfuegen(schleife, anfang);
}
ausgabe(anfang);
return 0;
}
Zuletzt bearbeitet: