Java布尔方法和单词算法

时间:2014-07-30 22:28:56

标签: java methods boolean substring

我试图理解下面的问题。我知道方法在做什么,它返回True。另外,我不明白这个问题。我相信答案是2,但我不知道为什么。以下是方法和问题。

在ABBAB语言中,字母表只有两个字母。当且仅当isValid方法对该字符串返回true时,字符串(包括和单字母字符串)才是有效字。 isValid定义如下:

 public boolean isValid(String word)
{
 int n = word.length();

 return n < 1 ||
      (isValid(word.substring(0, n-1) && 
           word.charAt(n-1) == 'B') ||
      (isValid(word.substring(0, n-2) &&
           "BA".equals(word.substring(n-2)));
}

ABBABA语言中有多少长度为7的有效单词?

2  3  15  23  34

0 个答案:

没有答案