例如,旋转array A = [3, 8, 9, 7, 6] is [6, 3, 8, 9, 7]。目标是将数组旋转 AK 次;也就是说,A 的每个元素都将向右移动 K 个索引。
例如,给定数组A = [3, 8, 9, 7, 6]和K = 3,函数应该返回[9, 7, 6, 3, 8]。
我想要这个在java中。我试过这个。
public static int[] rotation(int[] a,int k) {
int[] newArray = new int[a.length];
for(int i = 0 ; i < a.length ; i++) {
int newPosition = (i + k)%a.length;
newArray[newPosition] = a[i];
}
return newArray;
}
Run Code Online (Sandbox Code Playgroud)
我没有得到确切想要的主题启动器,但这里是我执行此任务的代码
class Solution {
public int[] solution(int[] arr, int k) {
int[] newArr = new int[arr.length];
if (arr.length == 0) return arr;
k = k%arr.length;
for (int i=0; i<arr.length; i++) {
newArr[i] = arr[(i + (arr.length - k)) % (arr.length)];
}
return newArr;
}
Run Code Online (Sandbox Code Playgroud)
}
| 归档时间: |
|
| 查看次数: |
5363 次 |
| 最近记录: |