Hallo Delphi-forum.de .
Ich lerne gerade für meine mündliche Informatikprüfung am Mittwoch.
Ich muss sagen, dass ich wegen persönlicher, aber auch wegen organisatorischer Schwächen der Schule nie wirklich gut in Informatik war. (5-6 Punkte)
Nun habe ich mich in der Vorabizeit mit Referaten etc. echt hochgekämpft auf 10 Punkte, die mir echt viel bedeuten.
Nun aber zum Kerngeschehen:
Im B-Teil meiner mündlichen Prüfung (Frage-Antwort-Spielchen) dreht es sich um Listen und Bäume. Hier möchte ich mich jedoch auf die Listen beziehen.
Was wir können müssen ist:
Einfach verkettete Liste, Doppelverkettung, Ringliste, Rekursion
Der Kern liegt auf der einfachen Verkettung, da müssen wir folgendes beherrschen:
Am Anfang einketten,
Am Ende einketten,
Mitte Einketten
Ausketten
So nun liegt Delphi mir wirklich nicht und ich hoffe ihr könnt mir helfen, ich habe natürlich Material aus dem Unterricht. Das auswendig lernen bringt mir natürlich nicht viel, ich muss das schließlich erklären und dafür muss ich es verstanden haben.
In der entsprechenden Word-Datei ist das ganze so verfasst:
1) Deklaration
type tzeiger=^telement;
telement=record
vorname:string;
zeiger:tzeiger;
end;
var zkopf,zneu,zvorg,zlauf:tzeiger;
2) Initialisieren der Liste:
zkopf:=NIL (leere Liste)
3) Neuen Speicherplatz generieren, bekannt durch den Zeiger darauf:
new(zneu);
4) Elementinhalt setzen:
Mit zeiger^ wird das bezeigte Element angesprochen:
zneu^.vorname:=edvorname.text;
5) Element verketten am Anfang:
zkopf:=zneu; (nach vorne verketten) zneu^.zeiger:=NIL oder (dann aber vorher) zneu^.zeiger:=zkopf;
6) Liste entlang laufen, d.h. zlauf immer weiter setzen:
zlauf:=zkopf;
while zlauf<>NIL do
zlauf:=zlauf^.zeiger;
7) Element ans Ende verketten:
Liste bis zum Ende laufen, Vorgängerzeiger merken. Am Ende ist zlauf=NIL und zvorg zeigt auf das letzte Element.
zvorg^.zeiger:=zneu;
zneu^.zeiger:=NIL

In der Mitte verketten:
Die Liste entlang laufen, bis der Platz gefunden ist (zwischen zvorg^ und zlauf^):
zvorg^.zeiger:=zneu;
zneu^.zeiger:=zlauf;
Könntet ihr mir vlt. von Punkt 5 bis Punkt 8 das ganze noch einmal versuchen in Worten zu erklären? Das wäre super nett! Da stehen zwar schon Beschreibungen bei, aber wenn dann mal mehr gefragt wird, als in der Erklärung steht, dann steh ich absolut auf'm Schlauch.
Ich denke, dass das Thema von meinem Infolehrer sehr dankbar ist und auch machbar, jedoch kenne ich wirklich niemanden, der mir das vernünftig erklären könnte, weshalb ich mich an euch wende.
edit: Skizzen wären natürlich optimal - man wird ja wohl noch träumen dürfen
edit²: Wir haben in der Prüfung natürlich keinen PC als Hilfe, wir müssen das an einer Tafel machen.
Gruß,
Len
Moderiert von
Narses: Titel geändert, war: "Mündliche Informatikprüfung - Listen".