En stak er et ordnet sæt af de elementer tilføjes og fjernes kun fra den ene ende . Denne ende kaldes toppen af stakken . Det første element er placeret i stakken vil være nederst i stakken . Det sidste element anbringes i stakken vil være på toppen af stakken . Stakken ADT (Abstract data type) indeholder en beskrivelse af de specifikke datastruktur og de operationer, der er tilladt at udføre på stakken. Anvendelsen af data arrays i et program giver dig mulighed for at gennemføre Stack ADT . Instruktioner
1
Klik på "Start " knappen i Windows og vælg " Visual Studio " ansøgning fra " Alle programmer " menuen.
2
Klik på "Åbn" i menuen "Filer" og find den C- program, du vil bruge til stakken ADT operationer
3
Føj følgende kode i erklæringen del af dit program : .
< p> typedef struct stack_ADT {
ElementType * rum,
int count ,
int toppen,
int maxsize ,
} array_stack ;
Stak CreateStack ()
{
Stack nyt,
new = malloc ( sizeof ( struct stack_ADT )),
< p > if ( nyt == NULL)
printf (" Stack mislykkedes \\ n ");
ellers
ny -> space = malloc ( sizeof ( ElementType ) * MAXSIZE )
ny -> maxsize = MAXSIZE ,
}
afkast nyt,
}
at oprette en ny stack ADT
4
Føj følgende kode i starten af stakken funktion: .
ElementType StackTop ( stack r)
bool Push ( ElementType element stack s )
{
ElementType * tmp ,
int i;
if ( s- > count == s- > maxsize ) < br >
{
tmp = malloc ( sizeof ( ElementType ) * ( s- > maxsize + MAXSIZE )),
if ( tmp == NULL)
< p > returnere false;
for (i = 0; i count , i + +)
tmp [i] = s -> space [i] ;
< p> gratis ( s- > mellemrum )
s- > space = tmp ,
s- > maxsize = s -> maxsize + MAXSIZE ,
< p >}
s- > space [ s- > top ] = element ,
s- > top + +;
s- > count + +;
tilbagevenden TRUE ,
}
bool Pop ( Stack s )
{
if ( EmptyStack (r) )
< p > returnere FALSK ;
ellers
{
s- > top - ,
s- > tæller - ;
< p> }
}
at angive stak ADT operationer.
5.
Klik på "File " og vælg "Gem" valgmulighed. Klik på " OK" -knappen for at gennemføre Stack ADT i din C-program .