0 Daumen
443 Aufrufe

Implementieren Sie die dynamische Variante eines Stacks/Kellers für ganze Zahlen. Dynamisch heißt in diesem Fall, dass der Stack beliebig viele Elemente speichern kann. Die Implementierung soll die folgenden Operationen unterstützen:

Push (x) - speichert ein neues Element mit Wert x auf dem Stack

Pop () - entfernt das oberste Element des Stacks und gibt seinen Wert aus

Top () - gibt den Wert des obersten Elements aus

Size () - gibt aus, wie viele Elemente sich im Stack befinden

Der Stack soll mithilfe eines Feldes und eines Stackpointers t implementiert werden, der auf die oberste (bzw. letzte) belegte Zelle zeigt. Läuft das Feld über, dann soll es durch ein doppelt so großes Feld ersetzt werden; sinkt der Pegel des Stacks wieder, dann soll das Feld sinnvoll verkleinert werden. (Bspw. so, dass nach einer pop-Operation nicht mehr als ein Drittel des Felds leer ist.)

Analysieren Sie die Laufzeiten ihrer Methoden.

Avatar von

Hast Du bereits Ansätze für diese Aufgabe? Welche Sprache? C? C++?

Leider noch nicht.

Wir verwenden den Pseudo-Code.

Es gibt nicht nur einen Pseudo-Code. Beschreibe euren Pseudocode bitte genauer.

... Stackpointers t implementiert werden, der auf die oberste (bzw. letzte) belegte Zelle zeigt.

Diese Anforderung zeugt mal wieder davon, dass die Dozenten, die sich solche Aufgaben ausdenken, selbst keine Programmierpraxis haben!

Ein anderes Problem?

Stell deine Frage

Ähnliche Fragen

0 Daumen
2 Antworten
+1 Daumen
0 Antworten

Willkommen bei der Stacklounge! Stell deine Frage einfach und kostenlos

x
Made by a lovely community