<span style="font-size:18px;">//栈的链式存储结构
#include<iostream>
using namespace std;
typedef int ElemType;
typedef struct stacknode
{
struct stacknode *next;
ElemType data;
};
struct stacklist
{
stacknode *top;
int count;
};
void InitStack(stacklist *s)
{
s->top=(stacknode*)malloc(sizeof(stacknode));
}
//压栈
stacklist* pushstack( stacklist *s,int data)
{
stacknode *p=(stacknode*)malloc(sizeof(stacknode));
p->data=data;
p->next=s->top;
s->top=p;
s->count++;
return s;
}
int pop(stacklist *s)
{
stacknode *p;
int e=s->top->data;
p=s->top;
s->top=s->top->next;
free(p);
s->count--;
}
int main()
{
stacklist *stack;
cout<<"请输入向堆栈中压入的数据;";
int data;
while(cin>>data)
{
stack=pushstack(stack , data);
}
while(stack->top!=NULL)
{
int e=pop(stack);
cout<<e<<" ";
}
return 0;
}</span>
栈的链式存储结构及简单实现
最新推荐文章于 2022-04-21 11:35:33 发布