Problem D: 栈的基本运算(栈和队列)
2016-04-11 21:55
246 查看
Problem D: 栈的基本运算(栈和队列)
Time Limit: 1 Sec Memory Limit:128 MB
Submit: 66 Solved: 24
[Submit][Status][Web
Board]
Description
编写一个程序,实现顺序栈的各种基本运算,主函数已给出,请补充每一种方法。1、初始化栈s;
2、判断栈s是否非空;
3、进栈一个元素;
4、判读栈s是否非空;
5、输出栈长度;
6、输出从栈顶到栈元素;
7、输出出栈序列;
8、判断栈s是否非空;
9、释放栈;
数据元素类型定义为
typedef char ElemType;
顺序栈的定义为
typedef struct
{
ElemType data[SizeMax];
int top;
}SqStack;
主函数:
int main()
{
SqStack *s;
InitStack(s); //初始化栈
if(StackEmpty(s))printf("空\n"); //判断栈是否为空
else printf("非空\n");
ElemType a,b,c,d,e;
cin>>a>>b>>c>>d>>e;
Push(s,a); //入栈
Push(s,b);
Push(s,c);
Push(s,d);
Push(s,e);
if(StackEmpty(s))printf("空\n");
else printf("非空\n");
printf("栈的长度为%d\n",Length(s)); //输出栈的长度
PrintStack(s); //输出从栈顶到栈底的元素
Print(s); //输出出栈序列
if(StackEmpty(s))printf("空\n");
else printf("非空\n");
DestroyStack(s); //释放栈
return 0;
}
Input
输入五个元素a,b,c,d,e;请根据题目编写算法。Output
Sample Input
abcde
Sample Output
空 非空 栈的长度为5 edcba edcba 非空
HINT
相关文章推荐
- 数据结构作业-如何求时间复杂度
- MySQL 入门(六)—— 索引
- 《第一行代码》第六章 记住密码功能
- poj 1065 Wooden Sticks
- 通过 URL 打开 Activity
- OneZero第四周第一次站立会议(2016.4.11)
- 高性能MySQL笔记-第4章Optimizing Schema and Data Types
- Android Activity四种启动方式
- 51cto大数据培训路线
- 递归实现:一个数的各位数字之和、n^k、字符串逆序
- enum枚举类型的使用
- linux grep命令
- JNI中javah找不到类文件解决方法
- 国富论
- 51cto大数据培训路线
- 前几周进度条汇总
- Codeforces Round #305 (Div. 2) B
- 大数据学习计划
- 最短路径概述
- 第一个WPF应用程序