프로그래머스 | 문자열 내 마음대로 정렬하기 (Java)

mul·2024년 6월 25일
0

알고리즘

목록 보기
63/65
post-custom-banner

🔒문제

프로그래머스 Lv.1 문자열 내 마음대로 정렬하기

🔑해결

문자열로 구성된 리스트 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;
    }
}
post-custom-banner

0개의 댓글