我正在尝试生成一个字符串的所有可能组合。
例如对于以下列表:a1q5z!H9,b1q5z!H9,c1q5z!H9,d1q5z!H9,a2q5z!H9等等。
我想避免使用许多嵌套循环,因此考虑使用MODULO做一些聪明的事情...但是我无法进行下去。
这是我制作的Javascript代码-您有什么建议吗?
例如对于以下列表:a1q5z!H9,b1q5z!H9,c1q5z!H9,d1q5z!H9,a2q5z!H9等等。
我想避免使用许多嵌套循环,因此考虑使用MODULO做一些聪明的事情...但是我无法进行下去。
这是我制作的Javascript代码-您有什么建议吗?
var c = [
['a', 'b', 'c', 'd'],
['1', '2', '3', '4'],
['q', 'w', 'e', 'r'],
['5', '6', '7', '8'],
['z', 'x', 'c', 'v'],
['!', '"', '£', '$'],
['H', 'J', 'K', 'L'],
['9', '8', '7', '6'],
];
var o = document.getElementById('output');
var pw = "";
var chars = c.length;
for( var i = 0; i <20; i++)
{
pw = ""
for(var j = 0; j < chars; j++ )
{
pw += c[j][i%4];
}
op(pw);
}
function op(s)
{
o.innerHTML = o.innerHTML + "<br>" + s;
}
这只输出列表中的前20个,但重复... 我差不多有了,但还差一点。任何帮助或指针将不胜感激。
c
被构造成那样? - Cerbrus