Solution 1) 내 풀이
import java.util.*;
class Solution {
public static List<String> getAllSuffixes(String str) {
List<String> list = new ArrayList<>();
for (int i = 0; i < str.length(); i++) {
list.add(str.substring(i));
}
return list;
}
public String[] solution(String my_string) {
List<String> allSuffixes = getAllSuffixes(my_string);
Collections.sort(allSuffixes);
String[] result = allSuffixes.toArray(new String[allSuffixes.size()]);
return result;
}
}
모든 접미사를 얻는 메서드를 작성해서 얻어낸다.
이후 List 유형을 Collections.sort로 사전적 정렬 해낸다.
반환 유형은 String[] 이기에 .toArray 메서드로 다시 배열로 반환한다.
(반환할 유형을 맞춰 작성해야함 new String)
Solution 2) 다른 사람의 풀이
import java.util.Arrays;
class Solution {
public String[] solution(String my_string) {
String[] answer = new String[my_string.length()];
for (int i = 0; i < answer.length; i++) {
answer[i] = my_string.substring(i);
}
Arrays.sort(answer);
return answer;
}
}
그냥 Arrays.sort로 배열을 정렬해도 사전적 정렬이 되는 거였다.