CodingBat > Java > Array-1 > reverse3:
给定整数长度3的阵列,返回与以相反的顺序的元素的新的数组,所以{1,2,3}为{3,2,1}.
public int[] reverse3(int[] nums) {
int[] values = new int[3];
for (int i = 0; i <= nums.length - 1; i++) {
for (int j = nums.length-1; j >= 0; j--) {
values[i] = nums[j];
}
}
return values;
}
Run Code Online (Sandbox Code Playgroud)
我无法使其正常工作,通常是数组中的最后一个int,成为新数组中的每个int
您不需要两级循环。只需一个循环:
for(int i = 0, j = nums.length - 1; i < nums.length; i++,j--) {
values[i] = nums[j];
}
Run Code Online (Sandbox Code Playgroud)
或者,或者,只是不要单独跟踪j,并执行以下操作:
for(int i = 0; i < nums.length; i++) {
values[i] = nums[nums.length - 1 - i];
}
Run Code Online (Sandbox Code Playgroud)