原题目是:我们被赋予该字符串“abc”是有效的,从任何有效的字符串V,我们可以将V分成两部分:X和Y(X连接Y)等于V,然后,X+“abc”+Y也是有效的。
例如S=“abc”,有效字符串为“aabcbc”,"abcabc",无效的字符串为:“abccba”,"bac","cabcba"。
核心算法:
public boolean isValid(String S) {
while(S.contains("abc"))
{
S=S.replace("abc","");
}
if(S.equals(""))
return true;
else
return false;
}
}
想法就是将其中的abc全部替换为“”空的字符串,然后最后的字符串如果为空的话就表示这是一个有效的字符串,如果不是空的话表明剩余的字符串不是有效的。
使用字符串自带的方法来操作就会很方便简洁。