博客
关于我
POJ - Permutations(群论,置换群)
阅读量:715 次
发布时间:2019-03-21

本文共 528 字,大约阅读时间需要 1 分钟。

置换群是群论中的一个非常重要的概念,它由置换(即生物体对换)组成的集合以及群运算(乘法)构成。置换群在数学、计算机科学和工程学中有广泛的应用,特别是在解决排列问题、优化算法和分布系统时。置换群的分析对理解许多数学概念和实际问题至关重要。

当我们处理置换群时,一个关键的问题是确定置换的阶,即置换的循环节长度的最小公倍数(LCM)。换句话说,一个置换可以分解为多个循环的乘积,而每个循环的长度决定了置换群的阶。要找到所有循环的长度的最小公倍数,我们需要分析置换的循环结构。

要找到循环节长度,我们可以采用以下步骤:

  • 初始化一个数组“visited”来记录每个元素是否被访问过。
  • 遍历每个元素,如果元素未被访问,则从该元素开始查找循环。
  • 在查找循环时,记录循环的长度。
  • 记录所有循环的长度,并计算这些长度的最小公倍数。
  • 例如,假设我们有一个置换,置换序列如下:

    • 1 -> 2 -> 3 -> 1
    • 4 -> 5 -> 4
    • 6 -> 6

    循环节数分别为3、2和1。这些循环节数的最小公倍数是6。

    需要注意的是,如果在记录循环节长度时,发现某个长度已经被记录过,可以直接使用之前的答案,而不是重新计算,这可能减少计算量。不过,需要确保已经收集了所有所需的循环节长度。

    转载地址:http://spirz.baihongyu.com/

    你可能感兴趣的文章
    Openlayers图文版实战,vue项目从0到1做基础配置
    查看>>
    Openlayers实战:modifystart、modifyend互动示例
    查看>>
    Openlayers实战:判断共享单车是否在电子围栏内
    查看>>
    Openlayers实战:加载Bing地图
    查看>>
    Openlayers实战:绘制图形,导出geojson文件
    查看>>
    Openlayers实战:绘制图形,导出KML文件
    查看>>
    Openlayers实战:绘制多边形,导出CSV文件
    查看>>
    Openlayers实战:绘制带箭头的线
    查看>>
    Openlayers实战:输入WKT数据,输出GML、Polyline、GeoJSON格式数据
    查看>>
    Openlayers实战:非4326,3857的投影
    查看>>
    Openlayers高级交互(10/20):绘制矩形,截取对应部分的地图并保存
    查看>>
    Openlayers高级交互(11/20):显示带箭头的线段轨迹,箭头居中
    查看>>
    Openlayers高级交互(14/20):汽车移动轨迹动画(开始、暂停、结束)
    查看>>
    Openlayers高级交互(15/20):显示海量多边形,10ms加载完成
    查看>>
    Openlayers高级交互(16/20):两个多边形的交集、差集、并集处理
    查看>>
    Openlayers高级交互(17/20):通过坐标显示多边形,计算出最大幅宽
    查看>>
    Openlayers高级交互(19/20): 地图上点击某处,列表中显示对应位置
    查看>>
    Openlayers高级交互(2/20):清除所有图层的有效方法
    查看>>
    Openlayers高级交互(20/20):超级数据聚合,页面不再混乱
    查看>>
    Openlayers高级交互(3/20):动态添加 layer 到 layerGroup,并动态删除
    查看>>