배열 목록을 정렬할지 (정렬하지 않을지) 추정해야합니다.배열 목록 정렬 여부를 결정합니다.
문자열을 정렬하면 알파벳 순서로 정렬됩니다. compareTo() 메서드를 사용하여 먼저 오는 문자열을 확인하십시오.
배열 목록이 정렬되어 있으면 true를 반환하고 그렇지 않으면 false를 반환합니다.
코드 :
public boolean isSorted()
{
boolean sorted = true;
for (int i = 1; i < list.size(); i++) {
if (list.get(i-1).compareTo(list.get(i)) != 1) sorted = false;
}
return sorted;
}
쉬운 시험 :는
ArrayList<String> animals = new ArrayList<String>();
ArrayListMethods zoo = new ArrayListMethods(animals);
animals.add("ape");
animals.add("dog");
animals.add("zebra");
//test isSorted
System.out.println(zoo.isSorted());
System.out.println("Expected: true");
animals.add("cat");
System.out.println(zoo.isSorted());
System.out.println("Expected: false");
animals.remove("cat");
animals.add(0,"cat");
System.out.println(zoo.isSorted());
System.out.println("Expected: false");
**Output:**
false
Expected: true
false
Expected: false
false
Expected: false
이 쉽게 테스트는 1/3
범위를 보여줍니다.
이 문제를 해결하는 방법.
목록이 단순히 2 개의 요소 만 검사하여 정렬되는지 어떻게 확인할 수 있습니까? 그 두 요소가 정렬되었지만 다른 요소가 아닌 경우는 어떻게 될까요? – DevZer0