#define STACK_SIZE 10000
struct stack{
char a[STACK_SIZE];
int top;
};
void push(struct stack *s, char c)
{
if(s->top == STACK_SIZE-1)
return;
else{
s->top++;
s->a[s->top] = c;
}
}
char pop(struct stack *s)
{
if(s->top == -1)
return -1;
else{
return s->a[s->top--];
}
}
bool isValid(char* s) {
struct stack stack;
stack.top = -1;
char c;
int tag = 0;
while(*s != '\0'){
printf("%c tag = %d\n", *s, tag);
if(*s == '(' || *s == '{' || *s == '['){
push(&stack, *s);
s++;
tag++;
}
else if(*s == ')' || *s == '}' || *s == ']'){
c = pop(&stack);
printf("c = %c\n", c);
if(c == '(' && *s == ')')
tag--,s++;
else if(c == '{' && *s == '}')
tag--,s++;
else if(c == '[' && *s == ']')
tag--,s++;
else
return false;
}else
s++;
}
if(tag == 0)
return true;
else
return false;
}
20. Valid Parentheses
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- Given a string containing just the characters '(', ')', '...
- Problem:### Given a string containing just the characters...
- 题目 Given a string containing just the characters '(', ')'...