IniziaInizia gratis

Implementare un'applicazione che verifica l'ordinamento

Stai implementando un metodo per verificare se un ArrayList di interi è ordinato in modo crescente. L'implementazione attuale confronta ogni possibile coppia di elementi nella lista per assicurarsi che siano nell'ordine corretto.

Questo esercizio fa parte del corso

Ottimizzazione del codice in Java

Visualizza il corso

Istruzioni dell'esercizio

  • Itera su tutti i numeri in numbers, usando i come iteratore e partendo da 0.
  • Itera di nuovo su tutti i numeri in numbers, usando j = i + 1, ciclano su numbers e incrementando i.
  • Completa l'istruzione di return per restituire true quando non hai trovato una coppia in ordine sbagliato.

Esercizio pratico interattivo

Prova a risolvere questo esercizio completando il codice di esempio.

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 ____;
    }
}
Modifica ed esegui il codice