开始使用免费开始使用

实现一个排序检查器应用

您正在实现一个方法,用于检查一个整数 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 ____;
    }
}
编辑并运行代码