题目考察的知识点:数组排序
题目解答方法的文字分析:与上到题相类似,一步一步移动即可。
本题解析所用的编程语言:c++
class Solution { public: /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param n int整型 * @param k int整型 * @return int整型vector<vector<>> */ vector<vector<int> > rotateII(int n, int k) { // write code here vector<vector<int>> v(n, vector<int>(n)); int x = 1; for (int i = 0; i < n; ++i) for (int j = 0; j < n; ++j) v[i][j] = x++; k %= n; while (k-- > 0) { for (int i = 0; i < n; ++i) { int tmp = v[i][0]; for (int k = 0; k < n - 1; ++k) v[i][k] = v[i][k + 1]; v[i][n - 1] = tmp; } for (int i = 0; i < n; ++i) { int tmp = v[0][i]; for (int k = 0; k < n - 1; ++k) v[k][i] = v[k + 1][i]; v[n - 1][i] = tmp; } } return v; } };