我正在写一些代码,结果遇到了这个问题。我有 N 种产品,我必须形成这些产品的所有可能组合,形成产品目录并找到一些属性,例如价格。为了做到这一点,我必须从给定的产品中形成产品目录(详尽,但不允许重复)。是否有执行此操作的标准化算法?请注意,目录可以包含任意正数的产品。
最佳答案
组合可以用位向量表示。如果设置了一位,则该元素存在于组合中。
因此您只需枚举从 1 到 2^N-1 的所有数字(从 0000001,最后一个元素到 1111111,所有元素都存在),并且将代表一个可能的组合。
关于algorithm - 生成所有可能的组合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7229743/