题解 | #调整牛群的位置#
调整牛群的位置
https://www.nowcoder.com/practice/cfa2130da69449229d8159561d39b0d3
考察的知识点:数组;
解答方法分析:
- 获取原数组nums的长度n,创建一个与原数组相同长度的结果数组result。
- 对于每个索引i,计算出旋转后该元素在结果数组中的新索引newIndex。计算公式为:(i - k + n) % n。这是为了处理旋转后的元素索引超出数组范围的情况。
- 根据计算得到的新索引newIndex,将原数组元素nums[i]放入结果数组result[newIndex]中。
- 遍历完整个原数组后,返回结果数组result。
所用编程语言:C++;
完整编程代码:↓
class Solution {
public:
/**
* 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
*
*
* @param nums int整型vector
* @param k int整型
* @return int整型vector
*/
vector<int> rotate_left(vector<int>& nums, int k) {
int n = nums.size();
vector<int> result(n);
k = k % n;
for (int i = 0; i < n; i++) {
int newIndex = (i - k + n) % n;
result[newIndex] = nums[i];
}
return result;
}
};

