본문 바로가기
코딩테스트 연습

접미사 배열

by 신재은👩🏼‍💻 2024. 4. 12.

문제 설명

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

 

제한사항

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

 

입출력 예

my_string result
"banana" ["a", "ana", "anana", "banana", "na", "nana"]
"programmers" ["ammers", "ers", "grammers", "mers", "mmers", "ogrammers", "programmers", "rammers", "rogrammers", "rs", "s"]

import java.util.stream.IntStream;
import java.util.Arrays;

class Solution {
    public String[] solution(String my_string) {

        String[] answer = IntStream.range(0, my_string.length())
            .mapToObj(i -> my_string.substring(i))
            .toArray(String[]::new);
        
        Arrays.sort(answer);
        
        return answer;
    }
}


import java.util.*;

import java.util.stream.IntStream;

 

class Solution {

    public String[] solution(String myString) {

        return IntStream.range(0, myString.length()).mapToObj(myString::substring).sorted().toArray(String[]::new);

    }

}

 

bold 표시된 부분, .mapToObj(i -> my_string.substring(i)) 이거랑 똑같음.

그냥 좀 쳐다 보면 이해 될 것임.

 

'코딩테스트 연습' 카테고리의 다른 글

코드 처리하기  (0) 2024.04.13
9로 나눈 나머지  (0) 2024.04.13
가까운 1 찾기  (0) 2024.04.12
문자열 잘라서 정렬하기  (0) 2024.04.12
간단한 식 계산하기  (0) 2024.04.12