题解 | #向左移动牛群# java
向左移动牛群
https://www.nowcoder.com/practice/e70fc604c3684ce294e6af5e97feff04
import java.util.*; public class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param nums int整型一维数组 * @param k int整型 * @return int整型一维数组 */ public int[] rotateCows (int[] nums, int k) { // write code here int[] ans = new int[nums.length]; for (int i = 0; i < nums.length; i++) { ans[(i + k) % nums.length] = nums[i]; } return ans; } }
使用的是Java语言编写。
该题考察的是数组的循环右移操作。给定一个整数数组和一个整数k,要求将数组向右循环移动k个位置。
代码的文字解释如下:
- 创建一个与原数组等长的新数组ans,用于保存循环右移后的结果。
- 遍历原数组nums的每个元素,计算元素在循环右移后的位置,即(i+k)%nums.length,并将该元素赋值给新数组ans相应位置。
- 返回新数组ans作为结果。