检查列表中的字符串是否可以由同一列表中的元素连接而成
例如:
输入列表-
{ best, rockstar, star, guide, bestguide, rock }
输出:
rockstar -> rock, star
bestguide -> best, guide
在这里,"rockstar"可以由单词"rock"和"star"组合而成,同样地,"bestguide"可以由"best"和"guide"连接而成。
我目前的解决方案是- 将每个字符串连接起来(2个字符串、3个字符串等),并将其存储在一个Map中。
Map的结构可能如下所示:
Map<String, List<String>>
{rockstar : [rock, star], ....}
现在只需遍历原始列表并在映射中查找。如果找到,那么它就是可能的解之一。
寻找更好的解决方案,具有更好的时间/空间复杂度。