文章分类 Classification
数组组合问题
稿件来源: 阳光企业网站管理系统 撰稿作者: 太阳光 发表日期: 2016-03-03 阅读次数: 80 查看权限: 游客查看
这本是csdn论坛里一个技术帖
原帖地址:http://bbs.csdn.net/topics/391908657
其实就是部N个数组中能组成多少种新数组的问题。比如:[1,2]和[a,b]只能组成四组,分别是[1,a][1,b][2,a][2,b]。用排列和组合知识我们知道如果不考虑重复的话,个数应该是各个数组长度之积。
靠套嵌N层来得出结果的大家千万别学。其实就是一个回调函数的问题:
var myArray = [['黑色','红色'],['大码','小码'],['T1','T2']]; var arrays = []; function getnext(str, arr) { for (var subA = arr[0], newArr = arr.length > 1 ? arr.slice(1) : null, n = 0; n < subA.length; n++) { newArr ? getnext(str + subA[n] + ",", newArr) : arrays.push(str + subA[n]); } } getnext('', myArray); console.log( arrays.join("\n"));
关键词: csdn,数组 编辑时间: 2016-03-03 22:39:16
7
高兴7
支持7
搞笑7
不解7
谎言7
枪稿7
震惊7
无奈7
无聊7
反对7
愤怒
50%(7)
50%(7)
- 暂无评论
文章图片 article Pictrue
网友评论