【发布时间】:2020-02-14 17:04:53
【问题描述】:
以下问题是关于数学的。问题是,如何计算非重复排列中元素的索引。例如,
A={a,b,c} 排列是 3!=6 因此: (a,b,c);(a,c,b);(b,a,c);(b,c ,a);(c,a,b);(c,b,a)
我研究了算法以获取此排列中元素的索引。在互联网上只有重复的排列算法。 (b,c,a) 的索引在这个从零开始的列表中,显然是 3。有没有简单的方法可以直接通过公式计算位置? 我不需要来自 python 的 itertools。因为我使用了非常大的排列。(示例 120!)我曾经使用 python 的 itertools 的排列函数来获取列表迭代器上元素的索引。但结果很累。我需要一个数学解决方案来直接获取索引。 感谢阅读。
【问题讨论】:
-
谷歌
rank and unrank permutations
标签: math formula permutation non-repetitive