2014-12-19 60 views
0

我寻求帮助与算法,将产生下降的长度为N-随机字母的所有可能的组合。例如, 'A', 'B' 的阵列, 'c' 应生成:算法生成长度为n的字符串的所有组合以1

ABC ACB BAC BCA 驾驶室 CBA AB 交流 BA BC CA CB 一个 b ç

其中字母不能重复自己一次使用

+2

请在问题BEF一个诚实的尝试矿石在这里问。 – 2014-12-19 07:05:47

+0

尝试任何代码之前,请学习排列组合。它会帮助你很多。 – 2014-12-19 07:07:20

+0

我已经通过NPM寻找任何解决方案没有人处理,在减少长度产生组合的情况。我试过我自己的,但没有任何高效率的想法,除了可能删除数组中的第一个元素,再生组合,然后再次删除第一个... – OaklandFanatic 2014-12-19 07:07:20

回答

1

“置换同渐渐收窄长度”基本上是一个标准的置换任务:

  • 的循环,你会给出一组n个字母
  • 采取每个字母,并将其添加到输出
  • 采取一切可能的字母组合,并将它们添加到输出
  • 采取的字母所有可能的三胞胎,并把它们添加到输出
  • ...做,直到你到达ň
+0

真棒。谢谢。这是有道理的。难以将其分解成更小的问题。 – OaklandFanatic 2014-12-19 07:20:09

相关问题