Začněte nyníZačněte zdarma

Implementace aplikace pro kontrolu seřazení

Implementuješ metodu, která ověří, zda je ArrayList celých čísel seřazen vzestupně. Stávající implementace porovnává každý možný pár prvků v seznamu, aby se ujistila, že jsou ve správném pořadí.

Toto cvičení je součástí kurzu

Optimalizace kódu v Javě

Zobrazit kurz

Pokyny k cvičení

  • Projdi všechna čísla v numbers pomocí iterátoru i, který začíná na 0.
  • Projdi všechna čísla v numbers znovu, tentokrát s j = i + 1, a procházej numbers se zvyšováním i.
  • Dokonči příkaz return tak, aby vrátil true v případě, že jsi nenašel/a žádný pár ve špatném pořadí.

Interaktivní cvičení na vyzkoušení si v praxi

Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.

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 ____;
    }
}
Upravit a spustit kód