javascript - 获取由两个数字之间的 ASCII 字符生成的字符串的所有可能组合

标签 javascript algorithm combinations permutation

我需要一个接受 3 个输入的简单 javascript 函数

1-起始ASCII值
2- 结束 ASCII 值
3-字符串长度

该函数将从起始值循环到结束值,直到长度已经完成。

例如,

开始 - 65
结束 - 67
长度- 2

我想要 [65, 66, 67] 的所有 ASCII 组合(长度为 2),即 ["A", "B", "C"]

我希望输出为
AA
AB
AC
BB
BA
BC
CA
CB
CC

最佳答案

要生成所有可能的组合,您可以使用递归生成器:

  function* combine(start, end, depth, previous = []) {
    if(depth <= 0) {
      yield previous;
      return;
    }

    for(let i = start; i <= end; i++)
      yield* combine(start, end, depth - 1, [...previous, i]);
 }

关于javascript - 获取由两个数字之间的 ASCII 字符生成的字符串的所有可能组合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55823533/

相关文章:

objective-c - 将数据流解析为记录的优雅算法

python - 我如何线性搜索和比较两个 .text 文件以查看它们之间缺少什么?

多个列表的python组合

c++ - 有没有办法组合两个变量?

python - 使用 itertools 从列表中进行组合

javascript - 如何向express.js 页面添加 Angular ?

javascript - Angular 2 CLI 正在编译,但浏览器未反射(reflect)在 WebStorm 中所做的更改

javascript - 如何在输入之间传输值

javascript - 遍历对象列表并检查属性值

寻找潜在匹配的算法