说我有一个像“欢迎”这样的词,我想在这个词的字母之间插入一个句号。 所以它将是“欢迎”,“w.elcome”,我们将会“,......直到达到”w.e.l.c.o.m.e“。
我需要一种能够为任何给定单词提供所有可能的字母和句号组合的算法。
答案 0 :(得分:0)
考虑一个包含S
所有可能位置的.
集。现在,集S
的长度为lengthOfTheString - 1
。
现在您只需找到集合S
的所有可能子集,并在处理每个子集时,您可以将子集中的位置标记为.
。
这样您就可以生成所有可能的组合。
Ex. String : "abc"
a b c
^ ^
1 2
Subsets :
{} abc
{1} a.bc
{2} ab.c
{1,2} a.b.c