PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : verkettete liste --------->


janosch
29.06.2002, 21:57
Hallo !

Wieder mal ich !!!

Ich habe hier eine Übungsaufgabe bei der ich zwar weiß wie das mit einem stack (push und pop)funktioniert nur will mein Prof. diese aufgabe als verkette liste realisiert haben bzw. ein Skize wie das im algemeinen aussieht nur wie mache ich das ?


Die Aufgabe lautet wie folgt:

Skizieren Sie für die Aufgabe: 5 9 8 + 4 6 * * 7 + *
die zugehörige verkettet Liste

Lösungsansatz ist auf dem bild das ich angehängt hat

Wie muß ich das + oder auch * zeichen in die Liste ein arbeiten?

Gibt es eine Seite auf der Verkette Listen anhand einer skitze veranschaulicht werden so wie auf meinem bild?

mfg janosch


xOOn
30.06.2002, 01:55
am einfachsten ist es, wenn du am ende der kette NULL hast und den anker immer verbiegst, also bei push (muesste das adden sein) legst du im speicher einen neuen eintrag an, und dieser zeigt auf den anket, der neue anker ist der pointer des neuen eintrags. bei pop (auslesen und deleten) liest du den wert aus dem ankereintrag aus, und biegt den anker auf den pointer im eintrag (naechstes elemen), speicher freigeben kann auch nie schaden

Bolle
30.06.2002, 10:47
hmm ich könnte eine verkettete liste mit klassen realisiert anbieten, weiß aber nicht ob das das richtige is.
wenn ja, kannst dich ja mal melden.

janosch
30.06.2002, 13:05
@Bolle

Danke ersteinmal für dein angebot :) :) :)

Würde das auch ohne Klassen machbar sein ??

mfg janosch

Bolle
30.06.2002, 19:20
ja mit sicherheit

ich hab aber keinen source zur hand, wenn du einen benötigst könnte ich eine schreiben, wollt ich sowieso schon mal machen, wenn du immer noch interresse hast, sag bescheid und ich guck mal was sich machen lässt.

janosch
30.06.2002, 19:45
jepp da sag ich doch nicht nein .......:D :D :D :D

Bolle
30.06.2002, 22:37
du sag mal, ich hab da noch ne frage, welche funktionen soll ich den implementieren? ich mein, so wie sich das anhöhrt, soll ja nur eine liste initzialisiert werden und die dann verkettet werden.
also, ich mein ich will mich ja nich totschreiben und dann war das alles umsonst ;)

janosch
01.07.2002, 20:18
@Bolle

Das überlasse ich dir ,da ich gerde erst dabei bin das mit den listen zu lernen .Aber es wäre nicht schleicht wenn du in das Programm die funktionen einfügen und löschen nachvollziehbar berücksichtigts :) (komenntare)


mfg janosch

Bolle
02.07.2002, 13:59
weißt du was mir aufgefallen ist, man kann das nich ohne klasse schreibe, außer wenn man sich viel unnütze arbeit aufladen will.
dazu bin ich leider zu faul ;)
wenn du mein bisheriges gewurschtel haben möchtest, meld dich bei j-h.boll@web.de

DerWolf
02.07.2002, 15:22
@Bolle: Verstehst du unter Klasse eine Struktur? (Neuer Datentyp?)
Für verkettete Listen brauchst immer nen neuen Datentyp den du dir selber definierst :) (denk ich mir halt mal)

Bolle
02.07.2002, 16:58
ne, ich mein einfach nur ne klasse definieren, um die liste zu organisieren. zum beispiel ne char liste oder so.
ich finde, dass ist einfacher als es ohne klasse zu machen, weil du für jedes listenelement ein neues objekt anlegen kannst, etc

DerWolf
02.07.2002, 18:24
So, bevor ich mir jetz die mühe mach und nen sample schreib, sag ich lieber die url wo das bestens beschrieben ist. (übrigends sehr gutes online tutorial)
Url: www.pronix.de/ckurs (http://www.pronix.de/ckurs/ckurs121.html)

Viel Spaß

Codemasta
06.07.2002, 10:31
Eine LL lässt sich auch ohne klassen realisieren.

z.B:



typedef struct
{
int iData;
tList *pNext;
}tList;

dann ein paar funktoönchen:
int push()
int pop()
//....


is nurn denkansatz...