C#中有界数字的排列/组合

时间:2013-11-12 13:45:46

标签: c# permutation n-dimensional

这是过去两天一直困扰着我的事情。 我需要为一个定点算法填充一个初始配置(/ state)-space。

在此状态空间中,每个过渡权重都有一个权重向量,不同的边界可以应用于此向量中的每个权重。

目前将此定义为转换权重的示例,例如(5,-1,-1)

每个权重的界限对应于权重向量本身的索引,例如这些权重的上限,假设下限为0,则由(5,3,3)

给出

现在,要设置初始配置空间,我需要在开头提供每种权重组合。 (0,0,0)(0,0,1)(0,1,0)(1,0,0)......依此类推,每个都达到最大界限。

现在,如果我正在处理3加权系统,这将是微不足道的,但我需要在我的代码中支持n维向量。

那么,关于如何填充这个配置空间的任何想法? (我现在正在使用C#)

1 个答案:

答案 0 :(得分:0)

以下是生成所有ntuples implemented in Javascript的代码。这是不言自明的,但是如果你需要进一步的解释,我很乐意提供帮助(我实际上尝试用伪代码编写算法,但我写的内容最终看起来像评论)