[코딩테스트] 61. 접미사 배열

윤설안's avatar
Aug 04, 2025
[코딩테스트] 61. 접미사 배열

문제

💡
어떤 문자열에 대해서 접미사는 특정 인덱스부터 시작하는 문자열을 의미합니다. 예를 들어, "banana"의 모든 접미사는 "banana", "anana", "nana", "ana", "na", "a"입니다.
문자열my_string
이 매개변수로 주어질 때,my_string의 모든 접미사를 사전순으로 정렬한 문자열 배열을 return 하는 solution 함수를 작성해 주세요.

제한사항

  • my_string은 알파벳 소문자로만 이루어져 있습니다.
  • 1 ≤ my_string의 길이 ≤ 100

예시

notion image

풀이

문자열의 접미사를 모두 구하기 위해 substring() 메서드를 사용했다.
substring(i)를 사용하면 i번째부터 끝까지의 문자열을 잘라올 수 있기 때문에, 반복문을 돌면서 i 값을 0부터 하나씩 증가시키며 모든 접미사를 구했다.
이렇게 만들어진 접미사들을 문자열 배열에 저장한 후, Arrays.sort()를 이용해서 사전순(알파벳 순서)으로 정렬했다.
import java.util.Arrays; public class Ex38 { public static void main(String[] args) { String my_string = "banana"; String[] answer = new String[my_string.length()]; for (int i = 0; i < my_string.length(); i++) { answer[i] = my_string.substring(i); } Arrays.sort(answer); for (int i = 0; i < answer.length; i++) { System.out.println(answer[i]); } } }
notion image
Share article

An's Blog