c语言数据结构栈,c语言栈结构
平时编程里经常需要用到数据结构,比如栈和队列等,为了避免每次用到都需要重新编写的麻烦现将C编写的数据结构栈记录下来,以备后用。
将数据结构栈用头文件的形式写成,方便调用。
#ifndef STACK_CLASS
#定义堆栈_类
#包括输入输出流
#包含标准库函数
使用命名空间标准
const int MaxStackSize=50
//栈类的说明
模板类T
类堆栈
{
私人:
t堆栈列表[MaxStackSize];
栈顶
公共:
堆栈(作废);
无效推送(常量项);
t Pop(void);
void清除堆栈(void);
//访问栈顶元素
T Peek(空隙)常数;
int堆栈长度(void)常量;
int stack属性(void)const;
int栈满(void)常量;
};
//默认构造函数
模板类T
堆栈t:堆栈(void):顶部(-1)
{}
模板类T
空的堆栈t:推(常量项)
{
if(top==MaxStackSize-1)
{
瑟尔堆栈溢出!恩德尔
出口(1);
}
顶;
stack list[top]=item;
}
模板类T
T Stack T :Pop(void)
{
测试温度;
if(top==-1)
{
cerr "尝试弹出空堆栈“恩德尔
出口(1);
}
temp=堆栈列表[top];
top-;
返回温度;
}
模板类T
T堆栈T :Peek(空)常量
{
if(top==-1)
{
cerr "试图查看空堆栈“恩德尔
出口(1);
}
返回堆栈列表[top];
}
模板类T
int Stack T:堆栈长度(void)常量
{
返回top 1;
}
模板类T
int Stack T:Stack empty(void)常量
{
return top==-1;
}
模板类T
int Stack T:栈满(void)常量
{
return top==MaxStackSize-1;
}
模板类T
void Stack T :ClearStack(void)
{
top=-1;
}
#endif
具体的调用形式:
运行结果:
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。