题解 | 调整牛群的位置
调整牛群的位置
https://www.nowcoder.com/practice/cfa2130da69449229d8159561d39b0d3
- 原地修改只能反来反去了。
- 学一学 steam API
import java.util.*;
import java.util.stream.*;
public class Solution {
private void reverse(final int[] a, int l, int r) {
while (l < r) {
final int tmp = a[l];
a[l] = a[r];
a[r] = tmp;
++l;
--r;
}
}
public ArrayList<Integer> rotate_left (int[] nums, int k) {
final int n = nums.length;
k = k % n;
if (k != 0) {
reverse(nums, 0, k - 1);
reverse(nums, k, n - 1);
reverse(nums, 0, n - 1);
}
return new ArrayList<>(Arrays.stream(nums).boxed().collect(Collectors.toList()));
}
}
