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

문자열 잘라서 정렬하기

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

문제 설명

문자열 myString이 주어집니다. "x"를 기준으로 해당 문자열을 잘라내 배열을 만든 후 사전순으로 정렬한 배열을 return 하는 solution 함수를 완성해 주세요.

단, 빈 문자열은 반환할 배열에 넣지 않습니다.

 

제한사항

  • 1 ≤ myString ≤ 100,000

 

입출력 예

myString result
"axbxcxdx" ["a","b","c","d"]
"dxccxbbbxaaaa" ["aaaa","bbb","cc","d"]

import java.util.Arrays;

 

class Solution {

    public String[] solution(String myString) {

        

        String[] parts = myString.split("x");

        String[] answer = Arrays.stream(parts)

            .filter(i -> !i.isEmpty())

            .sorted()

            .toArray(String[]::new);

        return answer;

    }

}


특별할 건 없는데...

split할 때 뒤에 -1, 0, 1, 뭘 넣어도 중간에 들어올 수 있는 빈 공간("")은 필터링이 안 된다.

따라서 별도로 걸러 줘야 된다.

stream 내니까 sorted로 정렬하고

toarray 하면 끝.

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

접미사 배열  (0) 2024.04.12
가까운 1 찾기  (0) 2024.04.12
간단한 식 계산하기  (0) 2024.04.12
l로 만들기  (0) 2024.04.12
부분 문자열 이어 붙여 문자열 만들기  (0) 2024.04.11