您的位置: 首页 > 文章 > 算法趣题 算法趣题 分类: 文章 • 2025-05-01 12:09:52 将数组元素循环右移k位,且只有一个元素大小的附加空间(不妨设为t)。 朴素想法:借助t容易实现循环右移一位。然后执行k次,复杂度O(n*k) 我们发现,这个题可以把数据分解成%k的同余类,然后把同余类看成一个环,置换环就ok了。 上面都是通过模拟的角度思考问题,但仔细一想,进而会发现把原序列分割成两段n-k与k,分别翻转在整体反转,其实就是答案了。 上面只是简单的剖析,下面来尝试实现一下。 朴素暴力 O(n*k) 代码略去。 置换环