题解 | #向左移动牛群II#
向左移动牛群II
https://www.nowcoder.com/practice/2467ddd80a2942abbaa752f3c874dd79
考察的是数组模拟操作。根据题目的叙述需要找准对应的坐标变换,矩阵大小 = n ,向左移动k就是i+n-k,向右移动就是 (i + k)%n。
具体Java代码如下所示
import java.util.*;
public class Solution {
/**
* 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
*
*
* @param n int整型
* @param k int整型
* @return int整型二维数组
*/
public int[][] rotateII (int n, int k) {
// write code here
int[][] nums = new int[n][n];
for (int i = 0; i < n; i++)
for (int j = 0; j < n; j++) {
//计算右移
int ii = (i + k) % n;
int jj = (j + k) % n;
nums[i][j] = n * ii + jj + 1;
}
return nums;
}
}



