这个集合可以构建出
image.png
种组合的集类:
image.png
问题的解决就是要找出满足条件的子集
image.png
来。...遍历集类中的所有子集
可以通过递归的方法来实现子集的遍历,代码如下:
/**
array:指定要处理的集合
start:最开始取元素的位置
subArray: 保存遍历得到的子集。...ctx: 保存上下文信息
filter: 指定条件过滤器,入参为:子集、子集元素在全集中的索引数组、上下文。...因此实现代码如下:
//保存最大的金额,作为上下文参数。...所以组成的数组应该是:[1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,5,5]。 条件就变为子集的金额数量加起来必须是等于11。计算的就是得到最小数量的子集。