gpt4 book ai didi

javascript - 排列需要帮助编码

转载 作者:行者123 更新时间:2023-11-28 02:01:48 26 4
gpt4 key购买 nike

谢谢你的回复,首先我要感谢你试图帮助我,我已经在几个网站上发布了这个也没有人试图提供帮助。

对于我的代码,我希望做的是排列计数。

会从上往下数
1,2,3
1,2,3
1,2,3

output to
111 = 1
112 = 1
113 = 1
121 = 1
122 = 1
123 = 1
133 = 1
211 = 1
212 = 1
213 = 1
333 = 1

继续,直到所有的数都被数完,并存储到数组中,可以查看到底有多少个数

代码将检查输入的数字并计算有多少结果,并显示有多少结果的结果以及每个结果在排列计数后有多少。

做起来难吗?

无论如何,谢谢你的帮助。

最佳答案

我想这并不难。这只是标准排列的事情。您需要使用一点递归:

function permute(size) {
var range = getRange(size);
var result = [];
getSubPerms('', range, result);
return result;
};

function getRange(size) {
var range = [];
for (var i = 0; i < size; i++) {
range.push(i + 1);
}
return range;
}

function getSubPerms(perm, range, result) {
for (var i = 0; i < range.length; i++) {
var perm2 = perm + range[i];
if (perm2.length == range.length) {
result.push(perm2);
} else {
getSubPerms(perm2, range, result);
}
}
}

var foo = permute(4); //an array of all of your results.
alert(foo.length); //256

但是,如果您只对它的长度感兴趣,而不必生成结果,那么只需 Math.pow(size, size) 即可获取结果的长度.

关于javascript - 排列需要帮助编码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13577484/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com