문자열로 구성된 리스트 strings와 정수 n이 주어졌을 때, 각 문자열의 인덱스 n번째 글자를 기준으로 정렬해 return하는 solution함수를 작성하는 문제이다.
내 마음대로 정렬이라는 조건을 보자마자 Comparator를 떠올리고 사용했다. n번째 글짜를 기준으로 판별한 다음, 글자가 같으면 compareTo를 통해 사전 기준으로 정렬해주었다.
import java.util.Arrays;
import java.util.Comparator;
class Solution {
public String[] solution(String[] strings, int n) {
String[] answer = strings.clone();
Arrays.sort(answer, new Comparator<String>() {
@Override
public int compare(String o1, String o2) {
if (o1.charAt(n) > o2.charAt(n)) {
return 1;
} else if (o1.charAt(n) == o2.charAt(n)) {
return o1.compareTo(o2);
} else {
return -1;
}
}
});
return answer;
}
}