数字组合生成器

Posted

技术标签:

【中文标题】数字组合生成器【英文标题】:Number combination generator 【发布时间】:2021-01-02 14:40:06 【问题描述】:

如何创建命令来生成这种类型的模式: 例如,如果我给他们数字“1”、“2”、“3”。组合结果:

1,2,3 1,2,- 1,3,- 2,3,- 1,-,- 2,-,- 3,-,-

【问题讨论】:

我在谷歌快速搜索后找到了解决方案。在 Stack Overflow 上提问之前,请先做最少的研究工作。 【参考方案1】:

您可以尝试递归解决方案:

function getCombinations(chars) 
  var result = [];
  var f = function(prefix, chars) 
for (var i = 0; i < chars.length; i++) 
  result.push(prefix + chars[i]);
  f(prefix + chars[i], chars.slice(i + 1));

  
  f('', chars);
  return result;


console.log(getCombinations([1, 2, 3]))

【讨论】:

以上是关于数字组合生成器的主要内容,如果未能解决你的问题,请参考以下文章

生成数字组合

生成每个可能的 7 位数字组合的算法 [关闭]

设计生成所有 n 位数字组合的递归函数的最佳方法是啥?

如何有效地生成组合而不重复,它们之间有特定的数字

[gcc &c语言] 随机生成8位的数字字母组合

根据插入第一个组合框中的数字生成组合框