CommencerCommencer gratuitement

Implémenter une application qui vérifie le tri

Vous implémentez une méthode pour vérifier si un ArrayList d’entiers est trié par ordre croissant. L’implémentation actuelle compare toutes les paires possibles d’éléments de la liste afin de s’assurer qu’ils sont dans le bon ordre.

Cet exercice fait partie du cours

Optimiser son code en Java

Afficher le cours

Instructions

  • Itérez sur tous les nombres de numbers, en utilisant i comme itérateur et en commençant à 0.
  • Itérez à nouveau sur tous les nombres de numbers, en utilisant j = i + 1, en bouclant sur numbers, et en incrémentant i.
  • Complétez l’instruction de retour pour retourner true lorsque vous n’avez trouvé aucune paire dans le mauvais ordre.

Exercice interactif pratique

Essayez cet exercice en complétant cet exemple de code.

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 ____;
    }
}
Modifier et exécuter le code