题解 | #旋转数组#
旋转数组
https://www.nowcoder.com/practice/e19927a8fd5d477794dac67096862042
2022.0824算法第44题旋转数组
本题采用三次反转的方式,感觉也没啥亮点。
vector<int> solve(int n, int m, vector<int>& a) { //取余,因为每次长度为n的旋转数组相当于没有变化 m=m%n; //第一次逆转全部数组元素 reverse(a.begin(), a.end()); //第二次只逆转开头m个 reverse(a.begin(), a.begin() + m); //第三次只逆转结尾m个 reverse(a.begin() + m, a.end()); return a; }