У меня есть ArrayList, который я хочу разделить на более мелкие списки размером n и выполнить операцию над каждым. Мой текущий способ сделать это
реализован с помощью ArrayLists в Java (подойдет любой псевдокод)
for (int i = 1; i <= Math.floor((A.size() / n)); i++) {
ArrayList temp = subArray(A, ((i * n) - n),
(i * n) - 1);
// do stuff with temp
}
private ArrayList<Comparable> subArray(ArrayList A, int start,
int end) {
ArrayList toReturn = new ArrayList();
for (int i = start; i <= end; i++) {
toReturn.add(A.get(i));
}
return toReturn;
}
где A - это список, n - размер желаемых списков
Я считаю, что этот способ занимает слишком много времени при работе со значительно большими списками (размером до 1 миллиона), поэтому я пытаюсь понять, что было бы более эффективным.