每日一题-Day25-轮转数组
题目
给你一个数组,将数组中的元素向右轮转 k
个位置,其中 k
是非负数。(向右移动k位)
如[1,2,3,4,5]向右轮转1位,[5,1,2,3,4,]
解题思路
取模,利用额外的数组复制原数组,通过取模的方式为数组赋值
class Solution {
public void rotate(int[] nums, int k) {
int length = nums.length;
int[] temp = new int[length];
for (int j = 0; j < length; j++){
temp[j] = nums[j];
}
for (int i = 0; i < length; i++){
nums[(i + k)%length] = temp[i];
}
}
}
来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/rotate-array/