Реализация приложения для проверки сортировки
Вы реализуете метод, который проверяет, отсортирован ли ArrayList целых чисел в порядке возрастания. Текущая реализация сравнивает все возможные пары элементов списка, чтобы убедиться, что они расположены в правильном порядке.
Это упражнение является частью курса
Оптимизация кода на Java
Инструкции к упражнению
- Переберите все элементы
numbers, используяiв качестве итератора, начиная с0. - Снова переберите все элементы
numbers, используяj = i + 1, выполняя цикл поnumbersи увеличиваяi. - Завершите оператор
return, чтобы вернутьtrue, если пара элементов в неправильном порядке не найдена.
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
public class Main {
public static void main(String[] args) {
int arraySize = 1000;
ArrayList unsortedNumbers = new ArrayList<>();
for (int i = 0; i < arraySize; i++) {
unsortedNumbers.add(i);
}
int temp = unsortedNumbers.get(arraySize - 1);
unsortedNumbers.set(arraySize - 1, unsortedNumbers.get(arraySize - 2));
unsortedNumbers.set(arraySize - 2, temp);
SortChecker checker = new SortChecker();
boolean result = checker.isSorted(unsortedNumbers);
System.out.println("Unsorted array result: " + result);
}
}
class SortChecker {
public boolean isSorted(ArrayList numbers) {
// Iterate through all the numbers
for (int i = ____; i < numbers.size(); ____) {
// Iterate through all the numbers again
for (int j = ____; j < numbers.size(); ____) {
if (numbers.get(i) > numbers.get(j)) {
return false;
}
}
}
// Return if we have not returned false so far
return ____;
}
}