javascript 或 php 的一道排列组合题
现在一个商品的属性是未知的,有可能只有颜色和尺寸属性,也有可能有颜色和尺寸和腰围,颜色:红,黄,蓝尺寸:大,中,小腰围:23,24,25想列出若干组属性的所有组合,该如何...
现在一个商品的属性是未知的,有可能只有颜色和尺寸属性,也有可能有颜色和尺寸和腰围,
颜色:红,黄,蓝
尺寸:大,中,小
腰围:23,24,25
想列出若干组属性的所有组合,该如何写呢?
比如 红大23,红大24以此类推 展开
颜色:红,黄,蓝
尺寸:大,中,小
腰围:23,24,25
想列出若干组属性的所有组合,该如何写呢?
比如 红大23,红大24以此类推 展开
推荐于2016-03-02
展开全部
// js:
var recursionSub = function(list, count, array, ind, start, indexs) {
start++;
if (start > count - 1) {
return;
}
if (start == 0) {
indexs = new Array(array.length);
}
for (indexs[start] = 0; indexs[start] < array[start].length; indexs[start]++) {
recursionSub(list, count, array, 0, start, indexs);
if (start == count - 1) {
var temp = new Array(count);
for (var i = count - 1; i >= 0; i--) {
temp[start - i] = array[start - i][indexs[start - i]];
}
list.push(temp);
}
}
}
var colors = "红黄蓝".split("");
var sizes = "大中小".split("");
var circs = "23,24,25".split(",");
var temp = [
colors, sizes, circs
];
var list = [];
recursionSub(list, temp.length, temp, 0, -1);
for (var i = 0; i < list.length; i++) {
console.log(list[i].join(""));
}
更多追问追答
追问
您乃大神也!能说说您的思路吗大神,我怎么想不出来呢?
追答
这个是活数据的做法,使用递归
如果你的数据是死的,
那就可以用求知者的方法,写死3个循环嵌套即可。
展开全部
<?php
$color = array('红','黄','蓝');
$type = array('大','中','小');
$size = array('23','24','25');
foreach ($color as $key => $value) {
foreach ($type as $ke => $va) {
foreach ($size as $k => $v) {
echo $value.'-'.$va.'-'.$v.'<br>';
}
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询