圆排列 又称循环排列,他是一个“二维形状”,构成空间上的一个 圆形
每个圆排列,都对应有“多个”直线排列
比如,某个圆排列的size是4,那么他就有4个“直线排列”
因为,比如某个直线排列是abcd
' 所谓圆排列,即把abcd这个直线排列,“均匀”的放到一个圆上 '
那么,这个圆排列 所对应的直线排列有: abcd、bcda 、cdab 、dabc
“即,圆排列看的是: 这n个元素间的 相对位置 ”
2个圆排列相同:
1, 元素个数相同
2, 这n个元素 的 相对问题,都相同
a d
e b 和 c e , 这俩是 同个 圆排列
d c b a
在普通的圆排列中,
a a
e b 和 b e 是不同的圆排列
d c c d
但是,如果我们规定: 不考虑“顺逆时针”(换句话说: 允许 镜像/对称 匹配)
' 上面两个图形, 是“镜像”对称的。 所以,属于同个 对称圆排列 '
即,镜像对称左L: 有m个 圆排列
镜像对称右R: 有m个 圆排列 ' 注: L和R 不是同个 圆排列 '
故,在普通的基础上, 多了2倍, 只需在求圆排列后, 除以2即可
故:n个元素,有: A(n, m)/ m /2个 (size=m的)对称圆排列