您可以迭代生成由一个部分,两个部分,三个部分等组成的所有字符串,直到在一个步骤中生成的所有字符串都超过六个字符为止。进一步的步骤将只生成更长的字符串,因此所有可能的短字符串都已经生成。如果在每个步骤中收集这些短字符串,那么最终会得到一组所有可能生成的短字符串。
在Python中:
S = set(['a', 'ab', 'ba'])collect = set()step = set([''])while step: step = set(a+b for a in step for b in S if len(a+b) <= 6) collect |= stepprint sorted(collect)



