字母之间所有可能的点位置的算法

时间:2018-03-27 10:56:28

标签: algorithm recursion combinations probability

说我有一个像“欢迎”这样的词,我想在这个词的字母之间插入一个句号。 所以它将是“欢迎”,“w.elcome”,我们将会“,......直到达到”w.e.l.c.o.m.e“。

我需要一种能够为任何给定单词提供所有可能的字母和句号组合的算法。

1 个答案:

答案 0 :(得分:0)

考虑一个包含S所有可能位置的.集。现在,集S的长度为lengthOfTheString - 1

现在您只需找到集合S的所有可能子集,并在处理每个子集时,您可以将子集中的位置标记为.

How to generate a powerset

这样您就可以生成所有可能的组合。

Ex. String : "abc"

a b c
 ^ ^
 1 2

Subsets :
{}       abc
{1}      a.bc
{2}      ab.c
{1,2}    a.b.c