【发布时间】:2015-12-29 05:58:36
【问题描述】:
我正在创建一个应用程序来生成项目组合,这些项目共同满足用户提供的标准。以下是系统的一些细节;
- 有一个齿轮集合,分为 3 类。
- 每个装备都有两种不同的能力。
- 套件是一组 3 种不同类型的装备。
- 一个工具包可能有也可能没有重复的
属性能力。
该应用程序允许用户提供 k 个能力 (0
目前我生成所有可能的套件并在对装备进行分组时;在将套件放入集合之前,请检查套件是否具有所有属性。正如你可以想象的那样,这种方法相当慢,除了可能使用数据库之外,我真的不知道如何通过数据结构或其他方式来优化它。
【问题讨论】:
-
您是否可以互换使用“能力”和“属性”这两个词?如果不是,什么是属性?
-
是的,对不起,我说的属性是能力
-
在没有完全指定能力的情况下,你想要(a)所有可能的工具包吗? (b) 一些可能的工具包? (c) 一种随机选择的可能套件?如果它是所有可能的套件并且 k 为 0,那么无论您使用什么算法,这将是一个很大的集合。还是我错过了什么?
-
所有包含指定能力的套件,k 仅在 0 和 7 之间(1,2,3,4,5,6)
标签: algorithm optimization set combinations computer-science