【发布时间】:2021-07-03 14:23:46
【问题描述】:
我无法找到代码的时间复杂度和空间复杂度来检查有效括号。有人可以帮忙吗?
代码-
bool isValid(string s)
{
int s_size = s.length();
for (int i = 0; i < s_size-1;i++)
{
if((s[i]=='(' && s[i+1]==')') || (s[i]=='[' && s[i+1]==']')|| (s[i]=='{' && s[i+1]=='}'))
{
s.erase(i, 2);
i=-1;
s_size-=2;
}
}
if(s.empty())
return true;
else
return false;
}
我认为空间复杂度是O(1),时间复杂度是O(n)。如果我错了,请纠正我。
【问题讨论】:
标签: c++ algorithm time-complexity space-complexity