Steward
分享是一種喜悅、更是一種幸福
程式語言 - LeetCode - C - 20. Valid Parentheses
題目:

解答:
bool isValid(char *s)
{
int i = 0;
int len = strlen(s);
int idx = 0;
int ch = 0;
char* p = calloc(sizeof(char), len);
for (i = 0; i < len; i++) {
switch (s[i]) {
case ')':
case '}':
case ']':
if (s[i] == ')') {
ch = '(';
}
else if (s[i] == '}') {
ch = '{';
}
else if (s[i] == ']') {
ch = '[';
}
if ((idx == 0) || (p[idx - 1] != ch)) {
return false;
}
idx-= 1;
break;
default:
p[idx++] = s[i];
break;
}
}
return idx ? false : true;
}