栈——判断栈的入出栈序列是否合法
I为入栈,O为出栈,如IOIOIO
实现代码:
#include<iostream>
using namespace std;
int judge1(char ch[]){
int i=0;
int I=0,O=0;;
while(ch[i]!='\0'){
if(ch[i]=='I')
++I;
if(ch[i]=='O')
++O;
if(O>I)
return 0;
++i;
}
if(I!=O)
return 0;
else
return 1;
}
int main(){
int op;
char ch[6]={
'I','I','O','O','I','O'
};
op=judge1(ch);
if(op==1)
cout<<"合法"<<endl;
else
cout<<"不合法"<<endl;
return 0;
}
输出结果:
合法
请按任意键继续. . .