1、C语言标准库当中没有与stack栈相关的标准类。
2、可以自定义这个头文件,例如:
struct Stack{
int mData[100]
int mLen
}
//初始化栈
void InitStack(Stack &S)
{
S.mLen = 0
}
//元素进栈
void Push(Stack &S,int item)
{
S.mData[S.mLen++] = item
}
//删除栈顶元素
int Pop(Stack &S)
{
S.mLen--
return S.mData[S.mLen]
}
//返回栈顶元素
int Peek(Stack &S)
{
return S.mData[S.mLen-1]
}
//判断栈是否为空
bool EmptyStack(Stack &S)
{
if(S.mLen == 0) return true
return false
}
//清空栈
void Clear(Stack &S)
{
for(int i = 0i<S.mLen++i)
{
Pop(S)
}
}
stdstack是自己写的,因为stdStack表示堆栈),这是一个容器类的改编,为程序员提供了堆栈的全部功能,也就是说实现了一个先进后出的数据结构。stdStack手写栈这种基本上是信手拈来的。学习数据结构的时候,使用这个stdStack的效率会非常高。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)