js 关于三个数组组合

zhiyuku4 2016-11-16 02:39:49
三个数组组合,进行组合,不能重复
a =[1,2 ]
b=[4,5]
c=[7,8]
然后输出
结果:[1,4,7],[1,4,8] ,[1,5,7],[1,5,8]
[24,7],[2,4,8] ,[2,5,7],[2,5,8]
...全文
417 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhiyuku4 2016-11-16
  • 打赏
  • 举报
回复
引用 3 楼 jslang 的回复:

var arr = [
	[1,2],
	[4,5],
	[7,8]
];
var sarr = [[]];
for (var i = 0; i < arr.length; i++) {
	var tarr = [];
	for (var j = 0; j < sarr.length; j++)
		for (var k = 0; k < arr[i].length; k++)
			tarr.push(sarr[j].concat(arr[i][k]));
	sarr = tarr;
}
alert(sarr.join("\n"));
不好意思啊 我结帖给错了 大佬
zhiyuku4 2016-11-16
  • 打赏
  • 举报
回复
引用 2 楼 qq_29594393 的回复:
三个循环2×2×2 8种情况,
var temparr=[ ["Fu","Hai","Huan"],["Wei","You"],["Chong","Tong","Zhong"]]; var ret = doExchange(temparr); function doExchange(doubleArrays){ var len=doubleArrays.length; if(len>=2){ var len1=doubleArrays[0].length; var len2=doubleArrays[1].length; var newlen=len1*len2; var temp=new Array(newlen); var index=0; for(var i=0;i<len1;i++){ for(var j=0;j<len2;j++){ temp[index]=doubleArrays[0][i]+ doubleArrays[1][j]; index++; } } var newArray=new Array(len-1); for(var i=2;i<len;i++){ newArray[i-1]= doubleArrays[i]; } newArray[0]=temp; return doExchange(newArray); } else{ return doubleArrays[0]; }}
引用 3 楼 jslang 的回复:

var arr = [
	[1,2],
	[4,5],
	[7,8]
];
var sarr = [[]];
for (var i = 0; i < arr.length; i++) {
	var tarr = [];
	for (var j = 0; j < sarr.length; j++)
		for (var k = 0; k < arr[i].length; k++)
			tarr.push(sarr[j].concat(arr[i][k]));
	sarr = tarr;
}
alert(sarr.join("\n"));
这个方法可行。不好意思啊 我结帖给错了 大佬
天际的海浪 2016-11-16
  • 打赏
  • 举报
回复

var arr = [
	[1,2],
	[4,5],
	[7,8]
];
var sarr = [[]];
for (var i = 0; i < arr.length; i++) {
	var tarr = [];
	for (var j = 0; j < sarr.length; j++)
		for (var k = 0; k < arr[i].length; k++)
			tarr.push(sarr[j].concat(arr[i][k]));
	sarr = tarr;
}
alert(sarr.join("\n"));
当作看不见 2016-11-16
  • 打赏
  • 举报
回复
三个循环2×2×2 8种情况,
zhiyuku4 2016-11-16
  • 打赏
  • 举报
回复
各位大佬帮帮忙,写半天了 不知道怎么组合出来

87,922

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧