Я пытаюсь создать алгоритм пузырьковой сортировки для сортировки массива, в котором в качестве элементов указан arraylist, с использованием процентов для сравнения. Я понимаю, что мне нужно проиндексировать вторую часть массива в массиве, но я не совсем уверен, в чем проблема именно с моей реализацией. Если у кого-то есть идеи, как решить эту проблему, я был бы очень признателен.
Это мой массив:
Percentage[] list = new Percentage[57];
Вот как я заполнил массив:
list[i] = new Percentage(dataArray[0], (cYear2/cYear1) - 1);
Это мой метод сравнения:
@Override
public int compareTo(Percentage percentage) {
return Double.compare(this.change, percentage.change);
}
Это мой метод сортировки:
public static void bubbleSort(ArrayList<Comparable> list) {
for (int k = 0; k < list.size(); k++) {
for (int j = 0; j < list.size() - 1; j++) {
if (list.get(j).getChange().compareTo(list.get(j + 1).getChange()) > 0) {
Collections.swap(list, j, j + 1);
}
}
}
}