Hàm khởi tạo và thêm một giá trị vào ngăn xếp
struct Node
{ int Data;
Node * Next;
};
struct Stack
{ Node * top;
};
void CREATE(Stack & S)
{ S.top=NULL;
}
void PUSH_FIRST(Stack & S, int x)
{ Node * e=new Node;
e->Data=x;
e->Next=NULL;
if(S.top==NULL) S.top=e;
else {
e->Next=S.top;
S.top=e;
}
}