栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

关于循环置换

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

关于循环置换

这是我的猜想的证明。让

n
是排列的长度,
m
是窗户的长度,我们可以转动,在那里
1 ≤ m ≤ n
。排列
P
Q
几乎相等
,如果存在窗口旋转的序列变换
P
Q
。几乎相等是等价关系。这是对等价类的要求保护的特征。

(1) m = 1: P almost equals Q if and only if P = Q(2) m = n: P almost equals Q if and only if they're rotations of each other(3) 1 < m < n, m odd: P almost equals Q if and only if they have the same parity(4) 1 < m < n, n even: P almost equals Q

前两个主张是显而易见的。至于

(3)
,奇偶条件的必要性源于以下事实:旋转奇数长度的窗口是偶数排列。

这里争论的重点是找到一个when的算法

n = m + 1 ≥ 4
,因为通常来说,我们可以使用类似于插入排序的算法进行转换,
P
以便除最后一个
m +1
元素之外的所有元素都匹配
Q
,具体来说,
(n, m) = (3,2)
可以通过检查来解决这种情况。如果
m
是偶数,我们将
Q
通过在
m
必要时旋转最后一个元素来进一步确保该转换匹配的奇偶校验。(
m
奇怪的是,我们假设均等。)

我们需要一种同时移动少于

m
元素的技术。假设状态如下。

1, 2, 3, 4, ..., m, m + 1

旋转第二个窗口

m - 1
时间(即反向一次)。

1, 3, 4, ..., m, m + 1, 2

旋转第一个窗口

m - 1
时间。

3, 4, ..., m, m + 1, 1, 2

第二,两次。

3, 2, 4, ..., m, m + 1, 13, 1, 2, 4, ..., m, m + 1

我们已经成功地旋转了前三个元素。这与旋转共轭相结合就足以将“插入”的第一个

m - 1
元素“放置”
Q
到位。其他两个按奇偶校验顺序排列正确。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/388389.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号