组的排列

问题描述 投票:0回答:1

给出项目组的列表K,每个组拥有一些固定数量的项目,从该组中生成所有(全部)项目置换的省时算法是什么?

示例:如果K = {A:3,B:2,C:4},那么这是三个有效置换:

AAABBCCCC
ABACCBCCA
CBACCBCAA

似乎与格雷码有一定关系,但是随着权重的增加,我不确定如何扩展它。尝试做得比单调增加总置换值并在每次迭代时重置都要好。

algorithm permutation
1个回答
0
投票

您可以查看“ 13.2多重集的排列”这里https://jjj.de/fxt/fxtbook.pdf

© www.soinside.com 2019 - 2024. All rights reserved.