资料:
取索引即可。string str; str[i]
c++获取字符串中某个字符 - 神册网 (shence123.com)
switch的格式,记得写break。
C语言/C++【switch语句详解(用法、规则、流程图、实例)】_c++ switch-CSDN博客
自己写的:
class Solution {
public:
/**
* 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
*
*
* @param s string字符串
* @return bool布尔型
*/
bool isValid(string s) {
// write code here
stack<char> a; // 不是stack<string>
for (int i = 0; i < s.size(); i++) {
switch (s[i]) {
case '{' :
a.push(s[i]); //粗心,不是a.push(i);
break;
case '(' :
a.push(s[i]);
break;
case '[' :
a.push(s[i]);
break;
case '}':
if (a.empty() || a.top() != '{') // 忘记判断a.empty()
return false;
else {
a.pop();
break;
}
case ')':
if (a.empty() || a.top() != '(')
return false;
else {
a.pop();
break;
}
case ']':
if (a.empty() || a.top() != '[')
return false;
else {
a.pop();
break;
}
}
}
if(a.empty()) // 容易忽略
return true;
return false;
}
};
模板的:
我的思路是建立左括号的栈。
模板的思路是根据遇到的左括号,建立期待遇到的右括号的栈。