我怎么能够把 Java印成形长数阵列的数值组合起来?
我要说的是,有 N印阵列的N号,例如:
var first = [ a , b , c , d ];
var second = [ e ];
var third = [ f , g , h , i , j ];
(例如,三个阵列,但其为这一问题而设的阵列数目。)
我也想拿出所有价值观的组合,以生产这些价值观。
aef
aeg
aeh
aei
aej
bef
beg
....
dej
EDIT:此处用我接受的回答作为基础。
var allArrays = [[ a , b ], [ c , z ], [ d , e , f ]];
function allPossibleCases(arr) {
if (arr.length === 0) {
return [];
}
else if (arr.length ===1){
return arr[0];
}
else {
var result = [];
var allCasesOfRest = allPossibleCases(arr.slice(1)); // recur with the rest of array
for (var c in allCasesOfRest) {
for (var i = 0; i < arr[0].length; i++) {
result.push(arr[0][i] + allCasesOfRest[c]);
}
}
return result;
}
}
var results = allPossibleCases(allArrays);
//outputs ["acd", "bcd", "azd", "bzd", "ace", "bce", "aze", "bze", "acf", "bcf", "azf", "bzf"]