Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (ANSI-Standard) » Implementieren Sie den Datentyp Stack

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
02.06.2004, 08:33 Uhr
chrisuni



Da bin ich wieder ...

Nun zu meiner Frage... Das einzige was ich über stack weiß ist das es auch Keller genannt wird und das es sich hierbei um einen Speicherbereich handelt, denke ich zumindest. Aber was genau ist ein stack jetzt überhaupt und wie soll ich denn diesen Datentyp implementieren ?


Genau die gleiche Aufgabenstellung hab ich auch nochmal für den Datentyp
Liste, welche ich nicht umsetzen kann.
--
gruß chris

nehmts mir net übel ich bin nen Anfänger und seh manchmal den Wald vor lauter Bäumen nicht mehr ;)
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
02.06.2004, 08:44 Uhr
stephanw
localhorst


Das ist keine ANSI C/C++ Frage, sondern eine Verstaendnisfrage. Tut mir leid, aber fuer Stacks und Listen gibt es sooovieeel Material, da kannst Du Dir mit Eigeninitive sogar schneller selbst helfen, als dass das hier einer erklaert. Eine gute seite zum Thema ist diese hier . Bei Implementierungsproblemen speziellerer Art bist Du hier wieder richtig.
--
Reden ist Schweigen und Silber ist Gold.

Dieser Post wurde am 02.06.2004 um 08:45 Uhr von stephanw editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
02.06.2004, 08:59 Uhr
(un)wissender
Niveauwart


google hilft auch immer.
--
Wer früher stirbt ist länger tot.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
02.06.2004, 09:10 Uhr
chrisuni



Ok... sry...
aber wäre für die Aufgabe: Implementieren Sie den Datentyp Stack.

die Lösung:

C++:
#include <iostream>
#include <conio.h>
using namespace std;

class Stack {  


    class Entry {
        friend class Stack;
        int val;
        Entry *back;
        
        Entry(int i, Entry* link): val(i), back(link) {}
    } * top;
public:
    Stack(): top(0){}
    
    void push(int i)
    {
        top = new Entry (i, top);
    }

    int pop()
    {
        Entry *e = top;
        int val = e->val;
        top = e->back;
        delete e;
        return val;
    }
} aStack;

main()
{
    aStack.push (1);
    aStack.push (2);
    aStack.push (3);
    aStack.push (4);

    cout<<aStack.pop()<<aStack.pop()<<aStack.pop()<<aStack.pop()<<endl;
getch();
}


--
gruß chris

nehmts mir net übel ich bin nen Anfänger und seh manchmal den Wald vor lauter Bäumen nicht mehr ;)
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
04.06.2004, 18:22 Uhr
Lumina



ich hab auch einiges Material... v.a. für Listen. einfach verkettete Liste mit und ohne Pseudoknoten, doppelt verkettete Liste mit und ohne Pseudoknoten..., Liste mit Array implementiert, wie gesagt, es gibt etliche Möglichkeiten!
--
*******************************************
Willst du glücklich sein im Leben, trage bei zu and'rer Glück,
denn die Freude, die wir geben, kehrt ins eig'ne Herz zurück!
*******************************************
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
04.06.2004, 19:59 Uhr
chrisuni



Also, ich weiß jetzt schonmal was ein stack ist:

Ein Stack ist ein Stapel wo ich Werte drauf speichern kann.
Ich kann die Werte aber nur in entgegengesetzter Reihenfolge wieder runterholen, das ist auch logisch. (Stapelprinzip)
Nur ich weiß absolut nicht wie ich das umsetzen soll.

Implementieren Sie den Datentyp Stack.

Das heißt ich muss jetzt eine ? Klasse ? implementieren, die einen Stapel (Stack) simuliert und mit Pointern auf die verschiedenen Stapel zeigt !?

So das ich jetzt Werte (int a= 1,b=2,c=3) da reinpacken kann und Sie auch wieder abrufen kann...

hoffe mal ich hab zumindest verstanden was ein Stack ist, nur weiß ich nicht wie ich die Fragestellung umsetzen kann, dazu hab ich leider noch zu wenig Programmierkenntnisse.
--
gruß chris

nehmts mir net übel ich bin nen Anfänger und seh manchmal den Wald vor lauter Bäumen nicht mehr ;)
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
006
04.06.2004, 20:16 Uhr
typecast
aka loddab
(Operator)


Ähhhhhmmm...

Du hast das doch zwei Posts weiter oben schon gemacht! Wiso willst du das nochmal implemtentieren?
--
All parts should go together without forcing. ... By all means, do not use a hammer. (IBM maintenance manual, 1925)
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
007
04.06.2004, 20:25 Uhr
chrisuni



hab ja keine antwort bekommen ob das richtig ist... hab das nicht genau verstanden ... der code von oben ist ausm www. aber danke jetzt weiß ich das der code richtig ist in Bezug auf die Aufgabenstellung

thx
--
gruß chris

nehmts mir net übel ich bin nen Anfänger und seh manchmal den Wald vor lauter Bäumen nicht mehr ;)
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ C / C++ (ANSI-Standard) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: