JS permutación y combinación de dos matrices
var?a?=?["A","B","C"];
var?b?=?[ " 1",?"2","3"];
ventana.onload?=?función?()?{
var?a1?=?new?objPL( a );//Calcular las permutaciones y combinaciones del array a
var?b1?=?new?objPL(b);//Calcular las permutaciones y combinaciones del array b
var?str?= ?"";
var?n?=?0;
//El número de permutaciones y combinaciones de a1 y b1 es la multiplicación de los dos ( bucle de doble capa)
for?(var?i?=?0;?i?
for?(var?j ?=?0;?j?< ?b1.length;?j++)?{
str?+=?a1[i]?+?b1[j]?+?"?";
n++;
}
str?+=?"
";
}
document.write("***" ?+?n?+?"pieza
");
document.write(str);
}
//Obtener la matriz Permutación y combinación
función?objPL(arr)?{
this.a?=?arr;
this .r?=?[];
p>this.n?=?0;
//Obtener N números a partir de M números (recursivamente)
this.mGetN?=?function?(curIndex ,?num,?curSelect)?{
if?(num?==?0)?{
this.r[this .n++]?=?curSelect;?return ;
}
if?(this.a.length?-?curIndex?
this.mGetN(curIndex?+ ?1,?num?-?1,?curSelect?+?this.a[curIndex]);
this.mGetN(curIndex?+?1, ?num,?curSelect);
}
for?(var?i?=?1;?i?<=?this.a.length;?i++)?{
this.mGetN (0,?i,?"");
}
return?this.r;
}
["A"," El resultado de la combinación de B", "C"] y ["1", "2", "3"]: