En stack är en ordnad uppsättning av elementen till och tas bort endast från ena änden . Denna ände kallas toppen av stacken . Det första elementet placeras i stapeln kommer att vara längst ned i bunten. Det sista elementet placeras i stapeln kommer att vara i toppen av stacken . Den Stack ADT ( Abstract Data Type ) ingår en beskrivning av den specifika datastruktur och verksamheten tillåts att utföra på stacken . Användningen av data- arrayer i ett program kan du implementera Stack ADT . Instruktioner
1
Klicka på "Start " -knappen i Windows och välj " Visual Studio " program från " Alla program " -menyn .
2
Klicka på " Open " i " Arkiv " -menyn och leta upp C-program du vill använda för de stack ADT verksamheten
3
Lägg till följande kod i deklarationen i ditt program : .
typedef struct stack_ADT {
ElementType * utrymme ,
int count;
int top ,
int maxSize ,
} array_stack ;
Stack CreateStack ( ) katalog
{
Stack nytt ,
nytt = malloc ( sizeof ( struct stack_ADT ) ) ;
om ( ny == null ) katalog
printf ( " Stack misslyckades \\ n " ) ;
annat
ny - > space = malloc ( sizeof ( ElementType ) * mAXSIZE ) ;
ny - > maxSize = mAXSIZE ;
}
avkastning nytt ,
}
att skapa en ny stack ADT
4
Lägg till följande kod i början av stapeln funktion : .
ElementType StackTop ( stack s ) katalog
bool Push ( ElementType element, stack s ) katalog
{
ElementType * tmp ;
int i;
om ( s - > count == s - > maxSize )
{
tmp = malloc ( sizeof ( ElementType ) * ( s - > maxSize + mAXSIZE ) ) ;
if ( tmp == null ) katalog
returnera false;
for (i = 0 ; i. count; i + + ) katalog tmp [ i] = s - > space [ i] ;
free ( s - > space ) ,
s - > space = tmp ;
s - > maxSize = s - > maxSize + mAXSIZE ,
}
s - > space [ s - > top ] = element;
s - > top + + ;
s - > count + + ;
return true ;
}
bool Pop ( Stack s ) katalog
{
om ( EmptyStack ( er ) ) katalog
returnera false;
annat
{
s - > top - ,
s - > räkna - ;
}
}
att ange stack ADT verksamhet .
5
Klicka på " File " och välj " Spara " alternativet . Klicka på " OK " -knappen för att implementera Stack ADT i din C-program .