判断操作是否合法(栈和队列)
时间: 1ms 内存:128M
描述:
假设以I和O分别表示进栈和出栈操作,栈的初态和终态均为空,进栈和出栈的操作序列可表示为仅由I和O组成的序列。
顺序栈的定义为
typedef struct{ElemType data[SizeMax];int top;}SqStack;编写一个算法,判断栈中的序列是否合法!若合法则返回1,否则返回0.需编写的算法为:int judge(SqStack *s);
输入:
输入为一个字符串,表示进栈出栈的操作序列,该序列存储在栈中。
输出:
若操作序列合法则输出“Yes”,否则输出"No"。
示例输入:
IOIIOIOO
示例输出:
Yes
提示:
参考答案:
解锁文章
文章评论