import java.util.*; public class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * 旋转数组 * @param n int整型 数组长度 * @param m int整型 右移距离 * @param a int整型一维数组 给定数组 * @return int整型一维数组 */ public int[] solve (int n, int m, int[] a) { // write code here m = m%n; // 先整体反转,再局部反转 reverse(a, 0, n-1); reverse(a, 0, m-1); reverse(a, m, n-1); return a; } private void reverse(int[] a, int s, int e){ while(s < e){ swap(a, s++, e--); } } private void swap(int[] a, int i, int j){ int t = a[i]; a[i] = a[j]; a[j] = t; } }