您的位置:首页 > 其它

判断栈操作序列是否合法

2017-04-17 10:25 218 查看
1.源码

#include <stdio.h>
#include <string.h>
#define maxSize 1000

int main(){
char str[maxSize];
int size = 0 ;//栈大小
scanf("%s",str);
int i ;

for(i = 0;i<strlen(str);i++){
if(str[i]=='I'){
size++;
}
if(str[i]=='O'&&size>0){
size--;//减一
}
if(size<0){//如果栈数为负数了
printf("非法序列\n");
return 0;
}
}
if(size == 0) printf("合法序列\n");
else printf("非法序列\n");
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: