仅一个周期的排名和非排名排列

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

我想在给定len的情况下按字典顺序对一个循环进行排列和取消排列。

具有一个周期的排列是您可以在此周期中访问每个元素的地方。

p:= (2,3,1)是一个周期的排列。排名1。

[p:= (3,1,2)也具有1个周期,但排名2,因为排列在字典上第一个越大,因此排名也越大。]]

p:= (1,2,3)是具有3个周期的置换。 (1),(2),(3)

我如何按字典顺序有效地对(用一个循环排列的排列进行排序)和对(用一循环的排列排列排列的len排序)?我不知道该如何存档。

我想在给定len的情况下按字典顺序对一个循环进行排名和取消排名。一个周期的排列是您可以在此周期中访问每个元素的位置。 p:=(2,3,1)是一个...

python arrays algorithm permutation ranking
1个回答
0
投票

我发现了一种排名解决方案。我们知道长度为n的排列具有n-1!一周期排列。基于这些知识,我们可以得出以下解决方案。

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